<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>sdps: SDPS APIs</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">sdps
   </div>
   <div id="projectbrief">Vitis Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Overview</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="globals.html"><span>APIs</span></a></li>
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="pages.html"><span>Examples</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__sdps__api.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">SDPS APIs</div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_sd_ps___config.html">XSdPs_Config</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This typedef contains configuration information for the device.  <a href="struct_x_sd_ps___config.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct____attribute____.html">__attribute__</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">ADMA2 32-Bit descriptor table.  <a href="struct____attribute____.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_sd_ps.html">XSdPs</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> driver instance data.  <a href="struct_x_sd_ps.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:gad5f983cd6daadb92a96fa4e7674541cc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gad5f983cd6daadb92a96fa4e7674541cc">XSDPS_CT_ERROR</a>&#160;&#160;&#160;0x2L</td></tr>
<tr class="memdesc:gad5f983cd6daadb92a96fa4e7674541cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Command timeout flag.  <a href="#gad5f983cd6daadb92a96fa4e7674541cc">More...</a><br/></td></tr>
<tr class="separator:gad5f983cd6daadb92a96fa4e7674541cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf7596df11ad001d37fd1f4482a817270"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaf7596df11ad001d37fd1f4482a817270">MAX_TUNING_COUNT</a>&#160;&#160;&#160;40U</td></tr>
<tr class="memdesc:gaf7596df11ad001d37fd1f4482a817270"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum Tuning count.  <a href="#gaf7596df11ad001d37fd1f4482a817270">More...</a><br/></td></tr>
<tr class="separator:gaf7596df11ad001d37fd1f4482a817270"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga85fda3522e69a1bf85f7dcd97b6023a1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga85fda3522e69a1bf85f7dcd97b6023a1">MAX_TIMEOUT</a>&#160;&#160;&#160;0x1FFFFFFFU</td></tr>
<tr class="memdesc:ga85fda3522e69a1bf85f7dcd97b6023a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum Timeout.  <a href="#ga85fda3522e69a1bf85f7dcd97b6023a1">More...</a><br/></td></tr>
<tr class="separator:ga85fda3522e69a1bf85f7dcd97b6023a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae4fc5b8635d5370e57487b3fe8084396"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gae4fc5b8635d5370e57487b3fe8084396">XSDPS_CMD8_VOL_PATTERN</a>&#160;&#160;&#160;0x1AAU</td></tr>
<tr class="memdesc:gae4fc5b8635d5370e57487b3fe8084396"><td class="mdescLeft">&#160;</td><td class="mdescRight">CMD8 voltage pattern.  <a href="#gae4fc5b8635d5370e57487b3fe8084396">More...</a><br/></td></tr>
<tr class="separator:gae4fc5b8635d5370e57487b3fe8084396"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8ea1bb6ebaa47630e35391dda14b3c9f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga8ea1bb6ebaa47630e35391dda14b3c9f">XSDPS_RESPOCR_READY</a>&#160;&#160;&#160;0x80000000U</td></tr>
<tr class="memdesc:ga8ea1bb6ebaa47630e35391dda14b3c9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ready response.  <a href="#ga8ea1bb6ebaa47630e35391dda14b3c9f">More...</a><br/></td></tr>
<tr class="separator:ga8ea1bb6ebaa47630e35391dda14b3c9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga38948ef8aebdc9fef1edde02dbfecdc7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga38948ef8aebdc9fef1edde02dbfecdc7">XSDPS_ACMD41_HCS</a>&#160;&#160;&#160;0x40000000U</td></tr>
<tr class="memdesc:ga38948ef8aebdc9fef1edde02dbfecdc7"><td class="mdescLeft">&#160;</td><td class="mdescRight">High Capacity Support.  <a href="#ga38948ef8aebdc9fef1edde02dbfecdc7">More...</a><br/></td></tr>
<tr class="separator:ga38948ef8aebdc9fef1edde02dbfecdc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0f1b246b9a0ce96065516e69ab486a16"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga0f1b246b9a0ce96065516e69ab486a16">XSDPS_ACMD41_3V3</a>&#160;&#160;&#160;0x00300000U</td></tr>
<tr class="memdesc:ga0f1b246b9a0ce96065516e69ab486a16"><td class="mdescLeft">&#160;</td><td class="mdescRight">3.3 voltage support  <a href="#ga0f1b246b9a0ce96065516e69ab486a16">More...</a><br/></td></tr>
<tr class="separator:ga0f1b246b9a0ce96065516e69ab486a16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga59829d4d2c22b281cd9ab09e63c48d1f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga59829d4d2c22b281cd9ab09e63c48d1f">XSDPS_CMD1_HIGH_VOL</a>&#160;&#160;&#160;0x00FF8000U</td></tr>
<tr class="memdesc:ga59829d4d2c22b281cd9ab09e63c48d1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">CMD1 for High voltage.  <a href="#ga59829d4d2c22b281cd9ab09e63c48d1f">More...</a><br/></td></tr>
<tr class="separator:ga59829d4d2c22b281cd9ab09e63c48d1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae0c50e51df911268acccdd1d8d46b878"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gae0c50e51df911268acccdd1d8d46b878">XSDPS_CMD1_DUAL_VOL</a>&#160;&#160;&#160;0x00FF8010U</td></tr>
<tr class="memdesc:gae0c50e51df911268acccdd1d8d46b878"><td class="mdescLeft">&#160;</td><td class="mdescRight">CMD1 for Dual voltage.  <a href="#gae0c50e51df911268acccdd1d8d46b878">More...</a><br/></td></tr>
<tr class="separator:gae0c50e51df911268acccdd1d8d46b878"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga77a17479fd0519869661c9e71b82a82c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga77a17479fd0519869661c9e71b82a82c">HIGH_SPEED_SUPPORT</a>&#160;&#160;&#160;0x2U</td></tr>
<tr class="memdesc:ga77a17479fd0519869661c9e71b82a82c"><td class="mdescLeft">&#160;</td><td class="mdescRight">High Speed support.  <a href="#ga77a17479fd0519869661c9e71b82a82c">More...</a><br/></td></tr>
<tr class="separator:ga77a17479fd0519869661c9e71b82a82c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafcfa86089805c4306f98f4e3838b1858"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gafcfa86089805c4306f98f4e3838b1858">UHS_SDR12_SUPPORT</a>&#160;&#160;&#160;0x1U</td></tr>
<tr class="memdesc:gafcfa86089805c4306f98f4e3838b1858"><td class="mdescLeft">&#160;</td><td class="mdescRight">SDR12 support.  <a href="#gafcfa86089805c4306f98f4e3838b1858">More...</a><br/></td></tr>
<tr class="separator:gafcfa86089805c4306f98f4e3838b1858"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga136ddd489f399b4eb82a3c8aab6717af"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga136ddd489f399b4eb82a3c8aab6717af">UHS_SDR25_SUPPORT</a>&#160;&#160;&#160;0x2U</td></tr>
<tr class="memdesc:ga136ddd489f399b4eb82a3c8aab6717af"><td class="mdescLeft">&#160;</td><td class="mdescRight">SDR25 support.  <a href="#ga136ddd489f399b4eb82a3c8aab6717af">More...</a><br/></td></tr>
<tr class="separator:ga136ddd489f399b4eb82a3c8aab6717af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9510331005527a72f48fbe8d2ed16765"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga9510331005527a72f48fbe8d2ed16765">UHS_SDR50_SUPPORT</a>&#160;&#160;&#160;0x4U</td></tr>
<tr class="memdesc:ga9510331005527a72f48fbe8d2ed16765"><td class="mdescLeft">&#160;</td><td class="mdescRight">SDR50 support.  <a href="#ga9510331005527a72f48fbe8d2ed16765">More...</a><br/></td></tr>
<tr class="separator:ga9510331005527a72f48fbe8d2ed16765"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7bad99c0dac6870ee0a0a8ca83522852"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga7bad99c0dac6870ee0a0a8ca83522852">UHS_SDR104_SUPPORT</a>&#160;&#160;&#160;0x8U</td></tr>
<tr class="memdesc:ga7bad99c0dac6870ee0a0a8ca83522852"><td class="mdescLeft">&#160;</td><td class="mdescRight">SDR104 support.  <a href="#ga7bad99c0dac6870ee0a0a8ca83522852">More...</a><br/></td></tr>
<tr class="separator:ga7bad99c0dac6870ee0a0a8ca83522852"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab6d8b9d8dfb5c12e16fee49452b1c1b1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gab6d8b9d8dfb5c12e16fee49452b1c1b1">UHS_DDR50_SUPPORT</a>&#160;&#160;&#160;0x10U</td></tr>
<tr class="memdesc:gab6d8b9d8dfb5c12e16fee49452b1c1b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">DDR50 support.  <a href="#gab6d8b9d8dfb5c12e16fee49452b1c1b1">More...</a><br/></td></tr>
<tr class="separator:gab6d8b9d8dfb5c12e16fee49452b1c1b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga406577df2b89f9b74838df7567268413"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga406577df2b89f9b74838df7567268413">WIDTH_4_BIT_SUPPORT</a>&#160;&#160;&#160;0x4U</td></tr>
<tr class="memdesc:ga406577df2b89f9b74838df7567268413"><td class="mdescLeft">&#160;</td><td class="mdescRight">4-bit width support  <a href="#ga406577df2b89f9b74838df7567268413">More...</a><br/></td></tr>
<tr class="separator:ga406577df2b89f9b74838df7567268413"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaa8483d5e22a34ded603eb88e1805aa0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaaa8483d5e22a34ded603eb88e1805aa0">SD_CLK_25_MHZ</a>&#160;&#160;&#160;25000000U</td></tr>
<tr class="memdesc:gaaa8483d5e22a34ded603eb88e1805aa0"><td class="mdescLeft">&#160;</td><td class="mdescRight">25MHz clock  <a href="#gaaa8483d5e22a34ded603eb88e1805aa0">More...</a><br/></td></tr>
<tr class="separator:gaaa8483d5e22a34ded603eb88e1805aa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5348592d5802b364df8d3e96c0a3c454"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga5348592d5802b364df8d3e96c0a3c454">SD_CLK_19_MHZ</a>&#160;&#160;&#160;19000000U</td></tr>
<tr class="memdesc:ga5348592d5802b364df8d3e96c0a3c454"><td class="mdescLeft">&#160;</td><td class="mdescRight">19MHz clock  <a href="#ga5348592d5802b364df8d3e96c0a3c454">More...</a><br/></td></tr>
<tr class="separator:ga5348592d5802b364df8d3e96c0a3c454"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga671326aa4ef3737f7f31a6c929c3604f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga671326aa4ef3737f7f31a6c929c3604f">SD_CLK_26_MHZ</a>&#160;&#160;&#160;26000000U</td></tr>
<tr class="memdesc:ga671326aa4ef3737f7f31a6c929c3604f"><td class="mdescLeft">&#160;</td><td class="mdescRight">26MHz clock  <a href="#ga671326aa4ef3737f7f31a6c929c3604f">More...</a><br/></td></tr>
<tr class="separator:ga671326aa4ef3737f7f31a6c929c3604f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga52d080f8ba1068e8190d52806e5a57c0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga52d080f8ba1068e8190d52806e5a57c0">EXT_CSD_DEVICE_TYPE_BYTE</a>&#160;&#160;&#160;196U</td></tr>
<tr class="memdesc:ga52d080f8ba1068e8190d52806e5a57c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD Device Type byte number.  <a href="#ga52d080f8ba1068e8190d52806e5a57c0">More...</a><br/></td></tr>
<tr class="separator:ga52d080f8ba1068e8190d52806e5a57c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga99fcdcae8a8f2a00fe2fd919b6ce1dc2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga99fcdcae8a8f2a00fe2fd919b6ce1dc2">EXT_CSD_SEC_COUNT_BYTE1</a>&#160;&#160;&#160;212U</td></tr>
<tr class="memdesc:ga99fcdcae8a8f2a00fe2fd919b6ce1dc2"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD Sector count byte 1.  <a href="#ga99fcdcae8a8f2a00fe2fd919b6ce1dc2">More...</a><br/></td></tr>
<tr class="separator:ga99fcdcae8a8f2a00fe2fd919b6ce1dc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9bfc7e9f44c30d5b468eec19d2f92a1f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga9bfc7e9f44c30d5b468eec19d2f92a1f">EXT_CSD_SEC_COUNT_BYTE2</a>&#160;&#160;&#160;213U</td></tr>
<tr class="memdesc:ga9bfc7e9f44c30d5b468eec19d2f92a1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD Sector count byte 2.  <a href="#ga9bfc7e9f44c30d5b468eec19d2f92a1f">More...</a><br/></td></tr>
<tr class="separator:ga9bfc7e9f44c30d5b468eec19d2f92a1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga87cf522720c21983a95b60ecf92c5f60"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga87cf522720c21983a95b60ecf92c5f60">EXT_CSD_SEC_COUNT_BYTE3</a>&#160;&#160;&#160;214U</td></tr>
<tr class="memdesc:ga87cf522720c21983a95b60ecf92c5f60"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD Sector count byte 3.  <a href="#ga87cf522720c21983a95b60ecf92c5f60">More...</a><br/></td></tr>
<tr class="separator:ga87cf522720c21983a95b60ecf92c5f60"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaed489daacfd9447abba7e2098e0d9ae4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaed489daacfd9447abba7e2098e0d9ae4">EXT_CSD_SEC_COUNT_BYTE4</a>&#160;&#160;&#160;215U</td></tr>
<tr class="memdesc:gaed489daacfd9447abba7e2098e0d9ae4"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD Sector count byte 4.  <a href="#gaed489daacfd9447abba7e2098e0d9ae4">More...</a><br/></td></tr>
<tr class="separator:gaed489daacfd9447abba7e2098e0d9ae4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8ca877dc2ad27fc4802f6405af288256"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga8ca877dc2ad27fc4802f6405af288256">EXT_CSD_DEVICE_TYPE_HIGH_SPEED</a>&#160;&#160;&#160;0x2U</td></tr>
<tr class="memdesc:ga8ca877dc2ad27fc4802f6405af288256"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD Device type HS.  <a href="#ga8ca877dc2ad27fc4802f6405af288256">More...</a><br/></td></tr>
<tr class="separator:ga8ca877dc2ad27fc4802f6405af288256"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga784ed6937b99829ef7a9c249a61482cf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga784ed6937b99829ef7a9c249a61482cf">EXT_CSD_DEVICE_TYPE_DDR_1V8_HIGH_SPEED</a>&#160;&#160;&#160;0x4U</td></tr>
<tr class="memdesc:ga784ed6937b99829ef7a9c249a61482cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD Dev type DDR 1.8v speed.  <a href="#ga784ed6937b99829ef7a9c249a61482cf">More...</a><br/></td></tr>
<tr class="separator:ga784ed6937b99829ef7a9c249a61482cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab9c4b83ddf8471ff2fa8a4988ba01423"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gab9c4b83ddf8471ff2fa8a4988ba01423">EXT_CSD_DEVICE_TYPE_DDR_1V2_HIGH_SPEED</a>&#160;&#160;&#160;0x8U</td></tr>
<tr class="memdesc:gab9c4b83ddf8471ff2fa8a4988ba01423"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD Dev type DDR 1.2v speed.  <a href="#gab9c4b83ddf8471ff2fa8a4988ba01423">More...</a><br/></td></tr>
<tr class="separator:gab9c4b83ddf8471ff2fa8a4988ba01423"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga785425c7f7070eddd02dbaf1630dba25"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga785425c7f7070eddd02dbaf1630dba25">EXT_CSD_DEVICE_TYPE_SDR_1V8_HS200</a>&#160;&#160;&#160;0x10U</td></tr>
<tr class="memdesc:ga785425c7f7070eddd02dbaf1630dba25"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD SDR 1.8v HS200.  <a href="#ga785425c7f7070eddd02dbaf1630dba25">More...</a><br/></td></tr>
<tr class="separator:ga785425c7f7070eddd02dbaf1630dba25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5d8e27bc9f9ab98a143e6a7a7a78ed35"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga5d8e27bc9f9ab98a143e6a7a7a78ed35">EXT_CSD_DEVICE_TYPE_SDR_1V2_HS200</a>&#160;&#160;&#160;0x20U</td></tr>
<tr class="memdesc:ga5d8e27bc9f9ab98a143e6a7a7a78ed35"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD SDR 1.2v HS200.  <a href="#ga5d8e27bc9f9ab98a143e6a7a7a78ed35">More...</a><br/></td></tr>
<tr class="separator:ga5d8e27bc9f9ab98a143e6a7a7a78ed35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab9586aa74011d614d3b87aa6d72962be"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gab9586aa74011d614d3b87aa6d72962be">EXT_CSD_DEVICE_TYPE_DDR_1V8_HS400</a>&#160;&#160;&#160;0x40U</td></tr>
<tr class="memdesc:gab9586aa74011d614d3b87aa6d72962be"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD SDR 1.8v HS400.  <a href="#gab9586aa74011d614d3b87aa6d72962be">More...</a><br/></td></tr>
<tr class="separator:gab9586aa74011d614d3b87aa6d72962be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad9c2fb1320f91077acfa8b78450c3863"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gad9c2fb1320f91077acfa8b78450c3863">EXT_CSD_DEVICE_TYPE_DDR_1V2_HS400</a>&#160;&#160;&#160;0x80U</td></tr>
<tr class="memdesc:gad9c2fb1320f91077acfa8b78450c3863"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD SDR 1.2v HS400.  <a href="#gad9c2fb1320f91077acfa8b78450c3863">More...</a><br/></td></tr>
<tr class="separator:gad9c2fb1320f91077acfa8b78450c3863"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabe76c4b7e5469e21fee99adcc183d663"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gabe76c4b7e5469e21fee99adcc183d663">CSD_SPEC_VER_3</a>&#160;&#160;&#160;0x3U</td></tr>
<tr class="memdesc:gabe76c4b7e5469e21fee99adcc183d663"><td class="mdescLeft">&#160;</td><td class="mdescRight">CSD card spec ver 3.  <a href="#gabe76c4b7e5469e21fee99adcc183d663">More...</a><br/></td></tr>
<tr class="separator:gabe76c4b7e5469e21fee99adcc183d663"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga40c201c512bf82c9cc12883af000fb2b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga40c201c512bf82c9cc12883af000fb2b">SCR_SPEC_VER_3</a>&#160;&#160;&#160;0x80U</td></tr>
<tr class="memdesc:ga40c201c512bf82c9cc12883af000fb2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">SCR spec ver 3.  <a href="#ga40c201c512bf82c9cc12883af000fb2b">More...</a><br/></td></tr>
<tr class="separator:ga40c201c512bf82c9cc12883af000fb2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaad1398373adf6de2322bf721948b891e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaad1398373adf6de2322bf721948b891e">ADDRESS_BEYOND_32BIT</a>&#160;&#160;&#160;0x100000000U</td></tr>
<tr class="memdesc:gaad1398373adf6de2322bf721948b891e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Macro used for beyond 32-bit addr.  <a href="#gaad1398373adf6de2322bf721948b891e">More...</a><br/></td></tr>
<tr class="separator:gaad1398373adf6de2322bf721948b891e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga206b703b7f911793694382fed5b5ff60"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga206b703b7f911793694382fed5b5ff60">XSDPS_ZYNQMP_SD0_BASE</a>&#160;&#160;&#160;0xFF160000U</td></tr>
<tr class="memdesc:ga206b703b7f911793694382fed5b5ff60"><td class="mdescLeft">&#160;</td><td class="mdescRight">ZynqMP SD0 Baseaddress.  <a href="#ga206b703b7f911793694382fed5b5ff60">More...</a><br/></td></tr>
<tr class="separator:ga206b703b7f911793694382fed5b5ff60"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga20a4495876d4efadbb543db0974af396"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga20a4495876d4efadbb543db0974af396">XSDPS_ZYNQMP_SD1_BASE</a>&#160;&#160;&#160;0xFF170000U</td></tr>
<tr class="memdesc:ga20a4495876d4efadbb543db0974af396"><td class="mdescLeft">&#160;</td><td class="mdescRight">ZynqMP SD1 Baseaddress.  <a href="#ga20a4495876d4efadbb543db0974af396">More...</a><br/></td></tr>
<tr class="separator:ga20a4495876d4efadbb543db0974af396"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga595cc431f6b2f4697e6d39f20ca7e2ea"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga595cc431f6b2f4697e6d39f20ca7e2ea">XSDPS_VERSAL_SD0_BASE</a>&#160;&#160;&#160;0xF1040000U</td></tr>
<tr class="memdesc:ga595cc431f6b2f4697e6d39f20ca7e2ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Versal SD0 Baseaddress.  <a href="#ga595cc431f6b2f4697e6d39f20ca7e2ea">More...</a><br/></td></tr>
<tr class="separator:ga595cc431f6b2f4697e6d39f20ca7e2ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga141c6ee970bedfb72b987c201844dcde"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga141c6ee970bedfb72b987c201844dcde">XSDPS_VERSAL_SD1_BASE</a>&#160;&#160;&#160;0xF1050000U</td></tr>
<tr class="memdesc:ga141c6ee970bedfb72b987c201844dcde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Versal SD1 Baseaddress.  <a href="#ga141c6ee970bedfb72b987c201844dcde">More...</a><br/></td></tr>
<tr class="separator:ga141c6ee970bedfb72b987c201844dcde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga98b954d28a6cea0c477bbd189ce48ddb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga98b954d28a6cea0c477bbd189ce48ddb">ENABLE_HS400_MODE</a></td></tr>
<tr class="memdesc:ga98b954d28a6cea0c477bbd189ce48ddb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable eMMC HS400 mode for Versal Net platform.  <a href="#ga98b954d28a6cea0c477bbd189ce48ddb">More...</a><br/></td></tr>
<tr class="separator:ga98b954d28a6cea0c477bbd189ce48ddb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gaf99da6fcfbc311afcd2d6e8a94c5fe55"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaf99da6fcfbc311afcd2d6e8a94c5fe55">XSdPs_CfgInitialize</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, <a class="el" href="struct_x_sd_ps___config.html">XSdPs_Config</a> *ConfigPtr, UINTPTR EffectiveAddr)</td></tr>
<tr class="memdesc:gaf99da6fcfbc311afcd2d6e8a94c5fe55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a specific <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance so that the driver is ready to use.  <a href="#gaf99da6fcfbc311afcd2d6e8a94c5fe55">More...</a><br/></td></tr>
<tr class="separator:gaf99da6fcfbc311afcd2d6e8a94c5fe55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3c3ab46b98e997b8439af4b149445811"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga3c3ab46b98e997b8439af4b149445811">XSdPs_CardInitialize</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga3c3ab46b98e997b8439af4b149445811"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes Card with Identification mode sequence.  <a href="#ga3c3ab46b98e997b8439af4b149445811">More...</a><br/></td></tr>
<tr class="separator:ga3c3ab46b98e997b8439af4b149445811"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8dfe3686ed74d09a2a46a7b5cddcde47"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga8dfe3686ed74d09a2a46a7b5cddcde47">XSdPs_ReadPolled</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Arg, u32 BlkCnt, u8 *Buff)</td></tr>
<tr class="memdesc:ga8dfe3686ed74d09a2a46a7b5cddcde47"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs SD read in polled mode.  <a href="#ga8dfe3686ed74d09a2a46a7b5cddcde47">More...</a><br/></td></tr>
<tr class="separator:ga8dfe3686ed74d09a2a46a7b5cddcde47"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga69aa57979c1ef9b9ec3fbdc6d8ab7277"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga69aa57979c1ef9b9ec3fbdc6d8ab7277">XSdPs_WritePolled</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Arg, u32 BlkCnt, const u8 *Buff)</td></tr>
<tr class="memdesc:ga69aa57979c1ef9b9ec3fbdc6d8ab7277"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs SD write in polled mode.  <a href="#ga69aa57979c1ef9b9ec3fbdc6d8ab7277">More...</a><br/></td></tr>
<tr class="separator:ga69aa57979c1ef9b9ec3fbdc6d8ab7277"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga88cdddd905825791ef9b682eb5adfff8"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga88cdddd905825791ef9b682eb5adfff8">XSdPs_Idle</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga88cdddd905825791ef9b682eb5adfff8"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to idle the SDIO Interface.  <a href="#ga88cdddd905825791ef9b682eb5adfff8">More...</a><br/></td></tr>
<tr class="separator:ga88cdddd905825791ef9b682eb5adfff8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae356e151de825904653850dc1f2de4e7"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gae356e151de825904653850dc1f2de4e7">XSdPs_Erase</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 StartAddr, u32 EndAddr)</td></tr>
<tr class="memdesc:gae356e151de825904653850dc1f2de4e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs Erase operation on the given address range.  <a href="#gae356e151de825904653850dc1f2de4e7">More...</a><br/></td></tr>
<tr class="separator:gae356e151de825904653850dc1f2de4e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad748650bd8ac568583551f6ef14b498a"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gad748650bd8ac568583551f6ef14b498a">XSdPs_Sanitize</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gad748650bd8ac568583551f6ef14b498a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs Sanitize operation on the unmapped user address range.  <a href="#gad748650bd8ac568583551f6ef14b498a">More...</a><br/></td></tr>
<tr class="separator:gad748650bd8ac568583551f6ef14b498a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga27d6bd37204cdb0c26430efedd8e97eb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_x_sd_ps___config.html">XSdPs_Config</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga27d6bd37204cdb0c26430efedd8e97eb">XSdPs_LookupConfig</a> (u16 DeviceId)</td></tr>
<tr class="memdesc:ga27d6bd37204cdb0c26430efedd8e97eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Looks up the device configuration based on the unique device ID.  <a href="#ga27d6bd37204cdb0c26430efedd8e97eb">More...</a><br/></td></tr>
<tr class="separator:ga27d6bd37204cdb0c26430efedd8e97eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6bc000fb4ce51502058f2e351c90fc19"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga6bc000fb4ce51502058f2e351c90fc19">XSdPs_Change_BusSpeed</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga6bc000fb4ce51502058f2e351c90fc19"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets high speed in card and host.  <a href="#ga6bc000fb4ce51502058f2e351c90fc19">More...</a><br/></td></tr>
<tr class="separator:ga6bc000fb4ce51502058f2e351c90fc19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1f8661e4ae53a7c29b3fd44cc56a3673"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga1f8661e4ae53a7c29b3fd44cc56a3673">XSdPs_Change_ClkFreq</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 SelFreq)</td></tr>
<tr class="memdesc:ga1f8661e4ae53a7c29b3fd44cc56a3673"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to change clock frequency to a given value.  <a href="#ga1f8661e4ae53a7c29b3fd44cc56a3673">More...</a><br/></td></tr>
<tr class="separator:ga1f8661e4ae53a7c29b3fd44cc56a3673"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0be8518af877aa1fe5f7c6b86ac4f7f8"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga0be8518af877aa1fe5f7c6b86ac4f7f8">XSdPs_Pullup</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga0be8518af877aa1fe5f7c6b86ac4f7f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends pullup command to card before using DAT line 3(using 4-bit bus).  <a href="#ga0be8518af877aa1fe5f7c6b86ac4f7f8">More...</a><br/></td></tr>
<tr class="separator:ga0be8518af877aa1fe5f7c6b86ac4f7f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga864452e1802367600d196ccc37310f7c"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga864452e1802367600d196ccc37310f7c">XSdPs_Get_BusWidth</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u8 *ReadBuff)</td></tr>
<tr class="memdesc:ga864452e1802367600d196ccc37310f7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets bus width support by card.  <a href="#ga864452e1802367600d196ccc37310f7c">More...</a><br/></td></tr>
<tr class="separator:ga864452e1802367600d196ccc37310f7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf11db1719933123762fecb790a2977da"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaf11db1719933123762fecb790a2977da">XSdPs_Change_BusWidth</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gaf11db1719933123762fecb790a2977da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets bus width to 4-bit in card and host.  <a href="#gaf11db1719933123762fecb790a2977da">More...</a><br/></td></tr>
<tr class="separator:gaf11db1719933123762fecb790a2977da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafc7e71cb62142d0ef939336195102666"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gafc7e71cb62142d0ef939336195102666">XSdPs_Get_BusSpeed</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u8 *ReadBuff)</td></tr>
<tr class="memdesc:gafc7e71cb62142d0ef939336195102666"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets bus speed supported by card.  <a href="#gafc7e71cb62142d0ef939336195102666">More...</a><br/></td></tr>
<tr class="separator:gafc7e71cb62142d0ef939336195102666"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga69e8d7cd927da4273a12d0d5fb3f36ff"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga69e8d7cd927da4273a12d0d5fb3f36ff">XSdPs_Get_Mmc_ExtCsd</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u8 *ReadBuff)</td></tr>
<tr class="memdesc:ga69e8d7cd927da4273a12d0d5fb3f36ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets EXT_CSD register of eMMC.  <a href="#ga69e8d7cd927da4273a12d0d5fb3f36ff">More...</a><br/></td></tr>
<tr class="separator:ga69e8d7cd927da4273a12d0d5fb3f36ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaee773eef8e260b4498dc607061eb18f6"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaee773eef8e260b4498dc607061eb18f6">XSdPs_Set_Mmc_ExtCsd</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Arg)</td></tr>
<tr class="memdesc:gaee773eef8e260b4498dc607061eb18f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes EXT_CSD register of eMMC.  <a href="#gaee773eef8e260b4498dc607061eb18f6">More...</a><br/></td></tr>
<tr class="separator:gaee773eef8e260b4498dc607061eb18f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1af3178b4b24c991b431eb7a0aa3b23b"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga1af3178b4b24c991b431eb7a0aa3b23b">XSdPs_SetBlkSize</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u16 BlkSize)</td></tr>
<tr class="memdesc:ga1af3178b4b24c991b431eb7a0aa3b23b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates Block size for read/write operations.  <a href="#ga1af3178b4b24c991b431eb7a0aa3b23b">More...</a><br/></td></tr>
<tr class="separator:ga1af3178b4b24c991b431eb7a0aa3b23b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa26e9b4a046701024b01b1b0cb48ed08"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaa26e9b4a046701024b01b1b0cb48ed08">XSdPs_Get_Status</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u8 *SdStatReg)</td></tr>
<tr class="memdesc:gaa26e9b4a046701024b01b1b0cb48ed08"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets SD card status information.  <a href="#gaa26e9b4a046701024b01b1b0cb48ed08">More...</a><br/></td></tr>
<tr class="separator:gaa26e9b4a046701024b01b1b0cb48ed08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga17d43f52a8948d5ec4f315641336d115"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga17d43f52a8948d5ec4f315641336d115">XSdPs_Select_Card</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga17d43f52a8948d5ec4f315641336d115"><td class="mdescLeft">&#160;</td><td class="mdescRight">Selects card and sets default block size.  <a href="#ga17d43f52a8948d5ec4f315641336d115">More...</a><br/></td></tr>
<tr class="separator:ga17d43f52a8948d5ec4f315641336d115"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4910d9a9023501be9878c9bf02d3970f"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga4910d9a9023501be9878c9bf02d3970f">XSdPs_StartReadTransfer</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Arg, u32 BlkCnt, u8 *Buff)</td></tr>
<tr class="memdesc:ga4910d9a9023501be9878c9bf02d3970f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs SD read in polled mode.  <a href="#ga4910d9a9023501be9878c9bf02d3970f">More...</a><br/></td></tr>
<tr class="separator:ga4910d9a9023501be9878c9bf02d3970f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga555d8f458181719d701f93a9bd023ed2"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga555d8f458181719d701f93a9bd023ed2">XSdPs_CheckReadTransfer</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga555d8f458181719d701f93a9bd023ed2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the transfer is completed successfully.  <a href="#ga555d8f458181719d701f93a9bd023ed2">More...</a><br/></td></tr>
<tr class="separator:ga555d8f458181719d701f93a9bd023ed2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6f7763ba81207cc125a3da437b140b58"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga6f7763ba81207cc125a3da437b140b58">XSdPs_StartWriteTransfer</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Arg, u32 BlkCnt, u8 *Buff)</td></tr>
<tr class="memdesc:ga6f7763ba81207cc125a3da437b140b58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Starts SD write transfer.  <a href="#ga6f7763ba81207cc125a3da437b140b58">More...</a><br/></td></tr>
<tr class="separator:ga6f7763ba81207cc125a3da437b140b58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa75b4159ddf2d517b2f8452bb7a704ca"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaa75b4159ddf2d517b2f8452bb7a704ca">XSdPs_CheckWriteTransfer</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gaa75b4159ddf2d517b2f8452bb7a704ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks for the write transfer completed.  <a href="#gaa75b4159ddf2d517b2f8452bb7a704ca">More...</a><br/></td></tr>
<tr class="separator:gaa75b4159ddf2d517b2f8452bb7a704ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga15e41cb3481e66918efd4ad7db154b62"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga15e41cb3481e66918efd4ad7db154b62">XSdPs_Read</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Arg, u32 BlkCnt, u8 *Buff)</td></tr>
<tr class="memdesc:ga15e41cb3481e66918efd4ad7db154b62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs SD read in polled mode.  <a href="#ga15e41cb3481e66918efd4ad7db154b62">More...</a><br/></td></tr>
<tr class="separator:ga15e41cb3481e66918efd4ad7db154b62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac51519692c6bb54d91aaecb8bcf957d1"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gac51519692c6bb54d91aaecb8bcf957d1">XSdPs_Write</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Arg, u32 BlkCnt, const u8 *Buff)</td></tr>
<tr class="memdesc:gac51519692c6bb54d91aaecb8bcf957d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs SD write in polled mode.  <a href="#gac51519692c6bb54d91aaecb8bcf957d1">More...</a><br/></td></tr>
<tr class="separator:gac51519692c6bb54d91aaecb8bcf957d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafa28027fec9472b8b49c61ad1c9489f2"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gafa28027fec9472b8b49c61ad1c9489f2">XSdPs_CheckTransferComplete</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gafa28027fec9472b8b49c61ad1c9489f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks for the transfer complete.  <a href="#gafa28027fec9472b8b49c61ad1c9489f2">More...</a><br/></td></tr>
<tr class="separator:gafa28027fec9472b8b49c61ad1c9489f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga87790bbe65eea7bf873f401121f4a6f7"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga87790bbe65eea7bf873f401121f4a6f7">XSdPs_IdentifyCard</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga87790bbe65eea7bf873f401121f4a6f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Identifies type of card using CMD0 + CMD1 sequence.  <a href="#ga87790bbe65eea7bf873f401121f4a6f7">More...</a><br/></td></tr>
<tr class="separator:ga87790bbe65eea7bf873f401121f4a6f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8e9a576dfdb4440a795eb6e712994050"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga8e9a576dfdb4440a795eb6e712994050">XSdPs_SdCardInitialize</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga8e9a576dfdb4440a795eb6e712994050"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function Initializes SD.  <a href="#ga8e9a576dfdb4440a795eb6e712994050">More...</a><br/></td></tr>
<tr class="separator:ga8e9a576dfdb4440a795eb6e712994050"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae55b1aa663629e99a9da94619c7487c5"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gae55b1aa663629e99a9da94619c7487c5">XSdPs_MmcCardInitialize</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gae55b1aa663629e99a9da94619c7487c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function initializes MMC.  <a href="#gae55b1aa663629e99a9da94619c7487c5">More...</a><br/></td></tr>
<tr class="separator:gae55b1aa663629e99a9da94619c7487c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9c1007ef091d85466eb133a80b9f3213"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga9c1007ef091d85466eb133a80b9f3213">XSdPs_CheckCardDetect</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga9c1007ef091d85466eb133a80b9f3213"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the card is present or not.  <a href="#ga9c1007ef091d85466eb133a80b9f3213">More...</a><br/></td></tr>
<tr class="separator:ga9c1007ef091d85466eb133a80b9f3213"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga85c3c8f706e9f35f21eb11c69e622870"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga85c3c8f706e9f35f21eb11c69e622870">XSdPs_CardReset</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga85c3c8f706e9f35f21eb11c69e622870"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends CMD0 to reset the card.  <a href="#ga85c3c8f706e9f35f21eb11c69e622870">More...</a><br/></td></tr>
<tr class="separator:ga85c3c8f706e9f35f21eb11c69e622870"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga121220c9912174a846e46a4c1ef388d3"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga121220c9912174a846e46a4c1ef388d3">XSdPs_CardIfCond</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga121220c9912174a846e46a4c1ef388d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends command to get the card interface details.  <a href="#ga121220c9912174a846e46a4c1ef388d3">More...</a><br/></td></tr>
<tr class="separator:ga121220c9912174a846e46a4c1ef388d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6c8f3a195672b1225b967c936c2e26ca"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga6c8f3a195672b1225b967c936c2e26ca">XSdPs_CardOpCond</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga6c8f3a195672b1225b967c936c2e26ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends command to get the card operating condition.  <a href="#ga6c8f3a195672b1225b967c936c2e26ca">More...</a><br/></td></tr>
<tr class="separator:ga6c8f3a195672b1225b967c936c2e26ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9645b197623dae8c5183bb3d31c7b0eb"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga9645b197623dae8c5183bb3d31c7b0eb">XSdPs_GetCardId</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga9645b197623dae8c5183bb3d31c7b0eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the card ID.  <a href="#ga9645b197623dae8c5183bb3d31c7b0eb">More...</a><br/></td></tr>
<tr class="separator:ga9645b197623dae8c5183bb3d31c7b0eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga24e128116e1fd880b3ed1ffe7709e75d"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga24e128116e1fd880b3ed1ffe7709e75d">XSdPs_GetCsd</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga24e128116e1fd880b3ed1ffe7709e75d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the CSD register from the card.  <a href="#ga24e128116e1fd880b3ed1ffe7709e75d">More...</a><br/></td></tr>
<tr class="separator:ga24e128116e1fd880b3ed1ffe7709e75d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6b65625dd94d082f21d8dedfdfd8db97"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga6b65625dd94d082f21d8dedfdfd8db97">XSdPs_CardSetVoltage18</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga6b65625dd94d082f21d8dedfdfd8db97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the card voltage to 1.8 V.  <a href="#ga6b65625dd94d082f21d8dedfdfd8db97">More...</a><br/></td></tr>
<tr class="separator:ga6b65625dd94d082f21d8dedfdfd8db97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga43c82653cd80c9c1eb82db2eec0d7718"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga43c82653cd80c9c1eb82db2eec0d7718">XSdPs_ResetConfig</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga43c82653cd80c9c1eb82db2eec0d7718"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures the initial Reset.  <a href="#ga43c82653cd80c9c1eb82db2eec0d7718">More...</a><br/></td></tr>
<tr class="separator:ga43c82653cd80c9c1eb82db2eec0d7718"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga90976f95bfd56ede8ee75175610c4c58"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga90976f95bfd56ede8ee75175610c4c58">XSdPs_HostConfig</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga90976f95bfd56ede8ee75175610c4c58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures the initial Host.  <a href="#ga90976f95bfd56ede8ee75175610c4c58">More...</a><br/></td></tr>
<tr class="separator:ga90976f95bfd56ede8ee75175610c4c58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae561ac5fb9655a8c8523a7afd848f8cd"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gae561ac5fb9655a8c8523a7afd848f8cd">XSdPs_CheckResetDone</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u8 Value)</td></tr>
<tr class="memdesc:gae561ac5fb9655a8c8523a7afd848f8cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks for Reset Done bits to be cleared after a reset assert.  <a href="#gae561ac5fb9655a8c8523a7afd848f8cd">More...</a><br/></td></tr>
<tr class="separator:gae561ac5fb9655a8c8523a7afd848f8cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1dcb11223d1894628593253fd7144c42"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga1dcb11223d1894628593253fd7144c42">XSdPs_SetupVoltageSwitch</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga1dcb11223d1894628593253fd7144c42"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets up the voltage switch.  <a href="#ga1dcb11223d1894628593253fd7144c42">More...</a><br/></td></tr>
<tr class="separator:ga1dcb11223d1894628593253fd7144c42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf0101a5bb2238bcf0279c3e4c0a33ccb"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaf0101a5bb2238bcf0279c3e4c0a33ccb">XSdPs_CheckBusHigh</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gaf0101a5bb2238bcf0279c3e4c0a33ccb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the CMD and DAT buses are high.  <a href="#gaf0101a5bb2238bcf0279c3e4c0a33ccb">More...</a><br/></td></tr>
<tr class="separator:gaf0101a5bb2238bcf0279c3e4c0a33ccb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafe05874a0c1191faf537b69af39cdef5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gafe05874a0c1191faf537b69af39cdef5">XSdPs_Identify_UhsMode</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u8 *ReadBuff)</td></tr>
<tr class="memdesc:gafe05874a0c1191faf537b69af39cdef5"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to Identify the supported UHS mode.  <a href="#gafe05874a0c1191faf537b69af39cdef5">More...</a><br/></td></tr>
<tr class="separator:gafe05874a0c1191faf537b69af39cdef5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga172c91b6b33e2e94ded0c3d58797411d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga172c91b6b33e2e94ded0c3d58797411d">XSdPs_SetTapDelay</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga172c91b6b33e2e94ded0c3d58797411d"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to set Tap Delay with respect to the speed modes.  <a href="#ga172c91b6b33e2e94ded0c3d58797411d">More...</a><br/></td></tr>
<tr class="separator:ga172c91b6b33e2e94ded0c3d58797411d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga273b141e9bacac12fd3b3123b7827faa"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga273b141e9bacac12fd3b3123b7827faa">XSdPs_Change_SdBusSpeed</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga273b141e9bacac12fd3b3123b7827faa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the SD Bus Speed.  <a href="#ga273b141e9bacac12fd3b3123b7827faa">More...</a><br/></td></tr>
<tr class="separator:ga273b141e9bacac12fd3b3123b7827faa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9dee6f11ef102eebf0440c20ec1caa8c"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga9dee6f11ef102eebf0440c20ec1caa8c">XSdPs_Change_MmcBusSpeed</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga9dee6f11ef102eebf0440c20ec1caa8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the eMMC bus speed.  <a href="#ga9dee6f11ef102eebf0440c20ec1caa8c">More...</a><br/></td></tr>
<tr class="separator:ga9dee6f11ef102eebf0440c20ec1caa8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga089a1b91f436e99b0663b91c3038e9ce"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga089a1b91f436e99b0663b91c3038e9ce">XSdPs_AutoTuning</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga089a1b91f436e99b0663b91c3038e9ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function is used to do the Auto tuning.  <a href="#ga089a1b91f436e99b0663b91c3038e9ce">More...</a><br/></td></tr>
<tr class="separator:ga089a1b91f436e99b0663b91c3038e9ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf9b8a29b65e1213b11ad22312e5f84be"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaf9b8a29b65e1213b11ad22312e5f84be">XSdPs_SetupADMA2DescTbl</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 BlkCnt, const u8 *Buff)</td></tr>
<tr class="memdesc:gaf9b8a29b65e1213b11ad22312e5f84be"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to setup ADMA2 descriptor table.  <a href="#gaf9b8a29b65e1213b11ad22312e5f84be">More...</a><br/></td></tr>
<tr class="separator:gaf9b8a29b65e1213b11ad22312e5f84be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad03504fb7e11f640d478e5db67f2beb3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gad03504fb7e11f640d478e5db67f2beb3">XSdPs_SetupADMA2DescTbl64Bit</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 BlkCnt)</td></tr>
<tr class="memdesc:gad03504fb7e11f640d478e5db67f2beb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to setup ADMA2 descriptor table for 64 Bit DMA.  <a href="#gad03504fb7e11f640d478e5db67f2beb3">More...</a><br/></td></tr>
<tr class="separator:gad03504fb7e11f640d478e5db67f2beb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad837da458a367f226a76d8eda9a09214"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gad837da458a367f226a76d8eda9a09214">XSdPs_DllReset</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gad837da458a367f226a76d8eda9a09214"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to reset the DLL.  <a href="#gad837da458a367f226a76d8eda9a09214">More...</a><br/></td></tr>
<tr class="separator:gad837da458a367f226a76d8eda9a09214"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0941061de89eef852f88a589b743983c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga0941061de89eef852f88a589b743983c">XSdPs_IdentifyEmmcMode</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, const u8 *ExtCsd)</td></tr>
<tr class="memdesc:ga0941061de89eef852f88a589b743983c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Identifies the eMMC speed mode.  <a href="#ga0941061de89eef852f88a589b743983c">More...</a><br/></td></tr>
<tr class="separator:ga0941061de89eef852f88a589b743983c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa0025016d626fdafc3ed1dc856834f12"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaa0025016d626fdafc3ed1dc856834f12">XSdPs_CheckEmmcTiming</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u8 *ExtCsd)</td></tr>
<tr class="memdesc:gaa0025016d626fdafc3ed1dc856834f12"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks the eMMC timing.  <a href="#gaa0025016d626fdafc3ed1dc856834f12">More...</a><br/></td></tr>
<tr class="separator:gaa0025016d626fdafc3ed1dc856834f12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga45d325b142a6526ec0468d1fbc34c471"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga45d325b142a6526ec0468d1fbc34c471">XSdPs_SetClock</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 SelFreq)</td></tr>
<tr class="memdesc:ga45d325b142a6526ec0468d1fbc34c471"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the clock to the passed frequency.  <a href="#ga45d325b142a6526ec0468d1fbc34c471">More...</a><br/></td></tr>
<tr class="separator:ga45d325b142a6526ec0468d1fbc34c471"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafa42ece30f32bbc385f0533873461b2d"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gafa42ece30f32bbc385f0533873461b2d">XSdPs_CheckVoltage18</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gafa42ece30f32bbc385f0533873461b2d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the voltage is set to 1.8 V or not.  <a href="#gafa42ece30f32bbc385f0533873461b2d">More...</a><br/></td></tr>
<tr class="separator:gafa42ece30f32bbc385f0533873461b2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga38aad34c4dd588d187c6053a9514c52e"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga38aad34c4dd588d187c6053a9514c52e">XSdPs_SetupCmd</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Arg, u32 BlkCnt)</td></tr>
<tr class="memdesc:ga38aad34c4dd588d187c6053a9514c52e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the command sequence.  <a href="#ga38aad34c4dd588d187c6053a9514c52e">More...</a><br/></td></tr>
<tr class="separator:ga38aad34c4dd588d187c6053a9514c52e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0446c3fbdc875f25c1bbf74efa3ff970"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga0446c3fbdc875f25c1bbf74efa3ff970">XSdPs_SendCmd</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Cmd)</td></tr>
<tr class="memdesc:ga0446c3fbdc875f25c1bbf74efa3ff970"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initiates the Cmd transfer to SD card.  <a href="#ga0446c3fbdc875f25c1bbf74efa3ff970">More...</a><br/></td></tr>
<tr class="separator:ga0446c3fbdc875f25c1bbf74efa3ff970"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga73b1071173ef4b1a1958773ed5c59a5f"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga73b1071173ef4b1a1958773ed5c59a5f">XSdPs_SetStartAddr</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 StartAddr)</td></tr>
<tr class="memdesc:ga73b1071173ef4b1a1958773ed5c59a5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the address of the first write block to be erased.  <a href="#ga73b1071173ef4b1a1958773ed5c59a5f">More...</a><br/></td></tr>
<tr class="separator:ga73b1071173ef4b1a1958773ed5c59a5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9fb2d5662fa3656cafb4a20530def821"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga9fb2d5662fa3656cafb4a20530def821">XSdPs_SetEndAddr</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 EndAddr)</td></tr>
<tr class="memdesc:ga9fb2d5662fa3656cafb4a20530def821"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the address of the last write block to be erased.  <a href="#ga9fb2d5662fa3656cafb4a20530def821">More...</a><br/></td></tr>
<tr class="separator:ga9fb2d5662fa3656cafb4a20530def821"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5ab803ced3accc20c54eee342e6e5b52"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga5ab803ced3accc20c54eee342e6e5b52">XSdPs_SendErase</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga5ab803ced3accc20c54eee342e6e5b52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends Erase command to the device and wait for transfer complete.  <a href="#ga5ab803ced3accc20c54eee342e6e5b52">More...</a><br/></td></tr>
<tr class="separator:ga5ab803ced3accc20c54eee342e6e5b52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga220352b3948b59ad89e32bb71579b861"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga220352b3948b59ad89e32bb71579b861">XSdPs_SetTapDelay_SDR104</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga220352b3948b59ad89e32bb71579b861"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the tap delay for SDR104 uhs mode.  <a href="#ga220352b3948b59ad89e32bb71579b861">More...</a><br/></td></tr>
<tr class="separator:ga220352b3948b59ad89e32bb71579b861"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafc5e8e46a354e7a21b046435382bba12"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gafc5e8e46a354e7a21b046435382bba12">XSdPs_SetTapDelay_SDR50</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gafc5e8e46a354e7a21b046435382bba12"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the tap delay for SDR50 uhs mode.  <a href="#gafc5e8e46a354e7a21b046435382bba12">More...</a><br/></td></tr>
<tr class="separator:gafc5e8e46a354e7a21b046435382bba12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae8066fed7198c31836229aeb151ab569"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gae8066fed7198c31836229aeb151ab569">XSdPs_SetTapDelay_DDR50</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gae8066fed7198c31836229aeb151ab569"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the tap delay for DDR50 uhs mode.  <a href="#gae8066fed7198c31836229aeb151ab569">More...</a><br/></td></tr>
<tr class="separator:gae8066fed7198c31836229aeb151ab569"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0dbbe882b04aab3d81add6021a8698bf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga0dbbe882b04aab3d81add6021a8698bf">XSdPs_SetTapDelay_SDR25</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga0dbbe882b04aab3d81add6021a8698bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the tap delay for SDR25 uhs mode.  <a href="#ga0dbbe882b04aab3d81add6021a8698bf">More...</a><br/></td></tr>
<tr class="separator:ga0dbbe882b04aab3d81add6021a8698bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac487bcb38cd80e158c7b833b4b3be34d"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gac487bcb38cd80e158c7b833b4b3be34d">XSdPs_Switch_Voltage</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gac487bcb38cd80e158c7b833b4b3be34d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Switches the SD card voltage from 3v3 to 1v8.  <a href="#gac487bcb38cd80e158c7b833b4b3be34d">More...</a><br/></td></tr>
<tr class="separator:gac487bcb38cd80e158c7b833b4b3be34d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga78d4cd8fc91d6c32b6ed35bd86581cb3"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga78d4cd8fc91d6c32b6ed35bd86581cb3">XSdPs_SetupTransfer</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga78d4cd8fc91d6c32b6ed35bd86581cb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initiates the transfer to or from SD card.  <a href="#ga78d4cd8fc91d6c32b6ed35bd86581cb3">More...</a><br/></td></tr>
<tr class="separator:ga78d4cd8fc91d6c32b6ed35bd86581cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab802e347cc12cdd73d4d9dd7737535e6"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gab802e347cc12cdd73d4d9dd7737535e6">XSdPs_Reset</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u8 Value)</td></tr>
<tr class="memdesc:gab802e347cc12cdd73d4d9dd7737535e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets the SD card.  <a href="#gab802e347cc12cdd73d4d9dd7737535e6">More...</a><br/></td></tr>
<tr class="separator:gab802e347cc12cdd73d4d9dd7737535e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2e868dda7aa547805fe79f9e840059e5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga2e868dda7aa547805fe79f9e840059e5">XSdPs_SetExecTuning</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga2e868dda7aa547805fe79f9e840059e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets bit to start execution of tuning.  <a href="#ga2e868dda7aa547805fe79f9e840059e5">More...</a><br/></td></tr>
<tr class="separator:ga2e868dda7aa547805fe79f9e840059e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab81250892c84553ab4738f038ed35edf"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gab81250892c84553ab4738f038ed35edf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes SD mode.  <a href="#gab81250892c84553ab4738f038ed35edf">More...</a><br/></td></tr>
<tr class="separator:gab81250892c84553ab4738f038ed35edf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf6a7c6b7c9f7a52aac051af0aa6ef729"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaf6a7c6b7c9f7a52aac051af0aa6ef729">XSdPs_MmcModeInit</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gaf6a7c6b7c9f7a52aac051af0aa6ef729"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes MMC mode.  <a href="#gaf6a7c6b7c9f7a52aac051af0aa6ef729">More...</a><br/></td></tr>
<tr class="separator:gaf6a7c6b7c9f7a52aac051af0aa6ef729"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga643a4036059e0a3094c22f46b1adccc8"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga643a4036059e0a3094c22f46b1adccc8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes eMMC mode.  <a href="#ga643a4036059e0a3094c22f46b1adccc8">More...</a><br/></td></tr>
<tr class="separator:ga643a4036059e0a3094c22f46b1adccc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa42580dd8c7438e838e274579d9c4be3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaa42580dd8c7438e838e274579d9c4be3">XSdPs_DisableBusPower</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gaa42580dd8c7438e838e274579d9c4be3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables the bus power.  <a href="#gaa42580dd8c7438e838e274579d9c4be3">More...</a><br/></td></tr>
<tr class="separator:gaa42580dd8c7438e838e274579d9c4be3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaca5e99fecb052c0552ab2d7a692a21ad"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaca5e99fecb052c0552ab2d7a692a21ad">XSdPs_EnableBusPower</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gaca5e99fecb052c0552ab2d7a692a21ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the bus power.  <a href="#gaca5e99fecb052c0552ab2d7a692a21ad">More...</a><br/></td></tr>
<tr class="separator:gaca5e99fecb052c0552ab2d7a692a21ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabb269de0a2001e73f252206fa07ce1e7"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gabb269de0a2001e73f252206fa07ce1e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enumerates the SD card.  <a href="#gabb269de0a2001e73f252206fa07ce1e7">More...</a><br/></td></tr>
<tr class="separator:gabb269de0a2001e73f252206fa07ce1e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8683eac6348837f171e31b10d27c8f13"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga8683eac6348837f171e31b10d27c8f13">XSdPs_MmcCardEnum</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga8683eac6348837f171e31b10d27c8f13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enumerates the MMC card.  <a href="#ga8683eac6348837f171e31b10d27c8f13">More...</a><br/></td></tr>
<tr class="separator:ga8683eac6348837f171e31b10d27c8f13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad8446a2398d2a9d346f9a52bf700f42d"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gad8446a2398d2a9d346f9a52bf700f42d">XSdPs_Execute_Tuning</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gad8446a2398d2a9d346f9a52bf700f42d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs SD tuning.  <a href="#gad8446a2398d2a9d346f9a52bf700f42d">More...</a><br/></td></tr>
<tr class="separator:gad8446a2398d2a9d346f9a52bf700f42d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad6793165c476a72b093f179766ab176f"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gad6793165c476a72b093f179766ab176f">XSdPs_EnableClock</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u16 ClockReg)</td></tr>
<tr class="memdesc:gad6793165c476a72b093f179766ab176f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the clock.  <a href="#gad6793165c476a72b093f179766ab176f">More...</a><br/></td></tr>
<tr class="separator:gad6793165c476a72b093f179766ab176f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga489b7d969537f9d455ec128a390a749d"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga489b7d969537f9d455ec128a390a749d">XSdPs_CalcBusSpeed</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 *Arg)</td></tr>
<tr class="memdesc:ga489b7d969537f9d455ec128a390a749d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates the bus speed.  <a href="#ga489b7d969537f9d455ec128a390a749d">More...</a><br/></td></tr>
<tr class="separator:ga489b7d969537f9d455ec128a390a749d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4fde94c65a7c6e64e2444cb33e7d0431"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga4fde94c65a7c6e64e2444cb33e7d0431">XSdPs_SetupReadDma</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u16 BlkCnt, u16 BlkSize, u8 *Buff)</td></tr>
<tr class="memdesc:ga4fde94c65a7c6e64e2444cb33e7d0431"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function is used to do the DMA transfer to or from SD card.  <a href="#ga4fde94c65a7c6e64e2444cb33e7d0431">More...</a><br/></td></tr>
<tr class="separator:ga4fde94c65a7c6e64e2444cb33e7d0431"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7deb56821f069d713aa76a10b83c4baa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga7deb56821f069d713aa76a10b83c4baa">XSdPs_SetupWriteDma</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u16 BlkCnt, u16 BlkSize, const u8 *Buff)</td></tr>
<tr class="memdesc:ga7deb56821f069d713aa76a10b83c4baa"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function is used to do the DMA transfer to or from SD card.  <a href="#ga7deb56821f069d713aa76a10b83c4baa">More...</a><br/></td></tr>
<tr class="separator:ga7deb56821f069d713aa76a10b83c4baa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8fc46805b1c3026474ca3b26142a9133"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga8fc46805b1c3026474ca3b26142a9133">XSdPs_Setup32ADMA2DescTbl</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 BlkCnt, const u8 *Buff)</td></tr>
<tr class="memdesc:ga8fc46805b1c3026474ca3b26142a9133"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to setup ADMA2 descriptor table for 32-bit DMA.  <a href="#ga8fc46805b1c3026474ca3b26142a9133">More...</a><br/></td></tr>
<tr class="separator:ga8fc46805b1c3026474ca3b26142a9133"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaed024f423e3600d7ec230f7ca8bb1118"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaed024f423e3600d7ec230f7ca8bb1118">XSdPs_Setup64ADMA2DescTbl</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 BlkCnt, const u8 *Buff)</td></tr>
<tr class="memdesc:gaed024f423e3600d7ec230f7ca8bb1118"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to setup ADMA2 descriptor table for 64-bit DMA.  <a href="#gaed024f423e3600d7ec230f7ca8bb1118">More...</a><br/></td></tr>
<tr class="separator:gaed024f423e3600d7ec230f7ca8bb1118"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacd492dfefb8a2fe67964993032250bd4"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gacd492dfefb8a2fe67964993032250bd4">XSdPs_CalcClock</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 SelFreq)</td></tr>
<tr class="memdesc:gacd492dfefb8a2fe67964993032250bd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates the clock divisor value.  <a href="#gacd492dfefb8a2fe67964993032250bd4">More...</a><br/></td></tr>
<tr class="separator:gacd492dfefb8a2fe67964993032250bd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf51d4f72c727b7d28592ac797fe5d467"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaf51d4f72c727b7d28592ac797fe5d467">XSdPs_DllRstCtrl</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u8 EnRst)</td></tr>
<tr class="memdesc:gaf51d4f72c727b7d28592ac797fe5d467"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to Set or Reset the DLL.  <a href="#gaf51d4f72c727b7d28592ac797fe5d467">More...</a><br/></td></tr>
<tr class="separator:gaf51d4f72c727b7d28592ac797fe5d467"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacf453a36b7ec19fb4b5dbfda827cc6a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gacf453a36b7ec19fb4b5dbfda827cc6a7">XSdPs_ConfigTapDelay</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gacf453a36b7ec19fb4b5dbfda827cc6a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to configure the Tap Delays.  <a href="#gacf453a36b7ec19fb4b5dbfda827cc6a7">More...</a><br/></td></tr>
<tr class="separator:gacf453a36b7ec19fb4b5dbfda827cc6a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab75b25b7d98ac1e72aa60cda683ffcda"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gab75b25b7d98ac1e72aa60cda683ffcda">XSdPs_SetVoltage18</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gab75b25b7d98ac1e72aa60cda683ffcda"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets voltage to 1.8 V.  <a href="#gab75b25b7d98ac1e72aa60cda683ffcda">More...</a><br/></td></tr>
<tr class="separator:gab75b25b7d98ac1e72aa60cda683ffcda"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8644655cee22998e56ef1dba7871ac89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga8644655cee22998e56ef1dba7871ac89">XSdPs_ConfigPower</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga8644655cee22998e56ef1dba7871ac89"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures the Power Level.  <a href="#ga8644655cee22998e56ef1dba7871ac89">More...</a><br/></td></tr>
<tr class="separator:ga8644655cee22998e56ef1dba7871ac89"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacae52488893efc2acb048af3660254f5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gacae52488893efc2acb048af3660254f5">XSdPs_ConfigDma</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gacae52488893efc2acb048af3660254f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures the DMA.  <a href="#gacae52488893efc2acb048af3660254f5">More...</a><br/></td></tr>
<tr class="separator:gacae52488893efc2acb048af3660254f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5d77b69b0e2e4ca66556dc8a90f834c4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga5d77b69b0e2e4ca66556dc8a90f834c4">XSdPs_ConfigInterrupt</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga5d77b69b0e2e4ca66556dc8a90f834c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures the Interrupts.  <a href="#ga5d77b69b0e2e4ca66556dc8a90f834c4">More...</a><br/></td></tr>
<tr class="separator:ga5d77b69b0e2e4ca66556dc8a90f834c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1c5c45efb0402b9d8e6a33d036dbd220"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Cmd, u32 Arg, u32 BlkCnt)</td></tr>
<tr class="memdesc:ga1c5c45efb0402b9d8e6a33d036dbd220"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates SD command.  <a href="#ga1c5c45efb0402b9d8e6a33d036dbd220">More...</a><br/></td></tr>
<tr class="separator:ga1c5c45efb0402b9d8e6a33d036dbd220"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaa85509249cb90b33c8a201a751bdd8f"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gaaa85509249cb90b33c8a201a751bdd8f">XSdps_CheckTransferDone</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr)</td></tr>
<tr class="memdesc:gaaa85509249cb90b33c8a201a751bdd8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the transfer is completed successfully.  <a href="#gaaa85509249cb90b33c8a201a751bdd8f">More...</a><br/></td></tr>
<tr class="separator:gaaa85509249cb90b33c8a201a751bdd8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3c9d104a1d7f9e14d8b2b79fbb47702d"><td class="memItemLeft" align="right" valign="top">s32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga3c9d104a1d7f9e14d8b2b79fbb47702d">XSdPs_CheckBusIdle</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Value)</td></tr>
<tr class="memdesc:ga3c9d104a1d7f9e14d8b2b79fbb47702d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the CMD/DATA bus is idle or not.  <a href="#ga3c9d104a1d7f9e14d8b2b79fbb47702d">More...</a><br/></td></tr>
<tr class="separator:ga3c9d104a1d7f9e14d8b2b79fbb47702d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga959b013962a6b53aa1c52f8ed78153be"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga959b013962a6b53aa1c52f8ed78153be">XSdPs_FrameCmd</a> (<a class="el" href="struct_x_sd_ps.html">XSdPs</a> *InstancePtr, u32 Cmd)</td></tr>
<tr class="memdesc:ga959b013962a6b53aa1c52f8ed78153be"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function frames the Command register for a particular command.  <a href="#ga959b013962a6b53aa1c52f8ed78153be">More...</a><br/></td></tr>
<tr class="separator:ga959b013962a6b53aa1c52f8ed78153be"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:ga40d2b56e1265bf5730e99da60e25dc2a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_x_sd_ps___config.html">XSdPs_Config</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga40d2b56e1265bf5730e99da60e25dc2a">XSdPs_ConfigTable</a> [XPAR_XSDPS_NUM_INSTANCES]</td></tr>
<tr class="memdesc:ga40d2b56e1265bf5730e99da60e25dc2a"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> Configuration Table.  <a href="#ga40d2b56e1265bf5730e99da60e25dc2a">More...</a><br/></td></tr>
<tr class="separator:ga40d2b56e1265bf5730e99da60e25dc2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga29c3d4542867ad2d0c8fcf48f46b8845"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_x_sd_ps___config.html">XSdPs_Config</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga29c3d4542867ad2d0c8fcf48f46b8845">XSdPs_ConfigTable</a> []</td></tr>
<tr class="memdesc:ga29c3d4542867ad2d0c8fcf48f46b8845"><td class="mdescLeft">&#160;</td><td class="mdescRight">The configuration table for devices.  <a href="#ga29c3d4542867ad2d0c8fcf48f46b8845">More...</a><br/></td></tr>
<tr class="separator:ga29c3d4542867ad2d0c8fcf48f46b8845"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Block size mask for 512 bytes</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrpb2c8055e58ef61c9cdf4351dcc557670"></a>Block size mask for 512 bytes - This is the default block size. </p>
</td></tr>
<tr class="memitem:ga893a5ec77671176e84b4885113db80f5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#ga893a5ec77671176e84b4885113db80f5">XSDPS_BLK_SIZE_512_MASK</a>&#160;&#160;&#160;0x200U</td></tr>
<tr class="memdesc:ga893a5ec77671176e84b4885113db80f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Blk Size 512.  <a href="#ga893a5ec77671176e84b4885113db80f5">More...</a><br/></td></tr>
<tr class="separator:ga893a5ec77671176e84b4885113db80f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
SD High Speed mode configuration options</h2></td></tr>
<tr class="memitem:gab6d1efc7e1e190a2a265752012d21bf7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sdps__api.html#gab6d1efc7e1e190a2a265752012d21bf7">SD_HS_MODE_ENABLE</a>&#160;&#160;&#160;1</td></tr>
<tr class="memdesc:gab6d1efc7e1e190a2a265752012d21bf7"><td class="mdescLeft">&#160;</td><td class="mdescRight">User configuration option to enable or disable SD HS mode.  <a href="#gab6d1efc7e1e190a2a265752012d21bf7">More...</a><br/></td></tr>
<tr class="separator:gab6d1efc7e1e190a2a265752012d21bf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="gaad1398373adf6de2322bf721948b891e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ADDRESS_BEYOND_32BIT&#160;&#160;&#160;0x100000000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Macro used for beyond 32-bit addr. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga4fde94c65a7c6e64e2444cb33e7d0431">XSdPs_SetupReadDma()</a>, and <a class="el" href="group__sdps__api.html#ga7deb56821f069d713aa76a10b83c4baa">XSdPs_SetupWriteDma()</a>.</p>

</div>
</div>
<a class="anchor" id="gabe76c4b7e5469e21fee99adcc183d663"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CSD_SPEC_VER_3&#160;&#160;&#160;0x3U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD card spec ver 3. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gae55b1aa663629e99a9da94619c7487c5">XSdPs_MmcCardInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="ga98b954d28a6cea0c477bbd189ce48ddb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ENABLE_HS400_MODE</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Enable eMMC HS400 mode for Versal Net platform. </p>

</div>
</div>
<a class="anchor" id="ga52d080f8ba1068e8190d52806e5a57c0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_DEVICE_TYPE_BYTE&#160;&#160;&#160;196U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD Device Type byte number. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga0941061de89eef852f88a589b743983c">XSdPs_IdentifyEmmcMode()</a>, and <a class="el" href="group__sdps__api.html#gaf6a7c6b7c9f7a52aac051af0aa6ef729">XSdPs_MmcModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="gab9c4b83ddf8471ff2fa8a4988ba01423"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_DEVICE_TYPE_DDR_1V2_HIGH_SPEED&#160;&#160;&#160;0x8U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD Dev type DDR 1.2v speed. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga0941061de89eef852f88a589b743983c">XSdPs_IdentifyEmmcMode()</a>.</p>

</div>
</div>
<a class="anchor" id="gad9c2fb1320f91077acfa8b78450c3863"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_DEVICE_TYPE_DDR_1V2_HS400&#160;&#160;&#160;0x80U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD SDR 1.2v HS400. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga0941061de89eef852f88a589b743983c">XSdPs_IdentifyEmmcMode()</a>.</p>

</div>
</div>
<a class="anchor" id="ga784ed6937b99829ef7a9c249a61482cf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_DEVICE_TYPE_DDR_1V8_HIGH_SPEED&#160;&#160;&#160;0x4U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD Dev type DDR 1.8v speed. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga0941061de89eef852f88a589b743983c">XSdPs_IdentifyEmmcMode()</a>.</p>

</div>
</div>
<a class="anchor" id="gab9586aa74011d614d3b87aa6d72962be"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_DEVICE_TYPE_DDR_1V8_HS400&#160;&#160;&#160;0x40U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD SDR 1.8v HS400. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga0941061de89eef852f88a589b743983c">XSdPs_IdentifyEmmcMode()</a>.</p>

</div>
</div>
<a class="anchor" id="ga8ca877dc2ad27fc4802f6405af288256"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_DEVICE_TYPE_HIGH_SPEED&#160;&#160;&#160;0x2U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD Device type HS. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga0941061de89eef852f88a589b743983c">XSdPs_IdentifyEmmcMode()</a>, and <a class="el" href="group__sdps__api.html#gaf6a7c6b7c9f7a52aac051af0aa6ef729">XSdPs_MmcModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga5d8e27bc9f9ab98a143e6a7a7a78ed35"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_DEVICE_TYPE_SDR_1V2_HS200&#160;&#160;&#160;0x20U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD SDR 1.2v HS200. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga0941061de89eef852f88a589b743983c">XSdPs_IdentifyEmmcMode()</a>.</p>

</div>
</div>
<a class="anchor" id="ga785425c7f7070eddd02dbaf1630dba25"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_DEVICE_TYPE_SDR_1V8_HS200&#160;&#160;&#160;0x10U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD SDR 1.8v HS200. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga0941061de89eef852f88a589b743983c">XSdPs_IdentifyEmmcMode()</a>.</p>

</div>
</div>
<a class="anchor" id="ga99fcdcae8a8f2a00fe2fd919b6ce1dc2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_SEC_COUNT_BYTE1&#160;&#160;&#160;212U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD Sector count byte 1. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit()</a>, and <a class="el" href="group__sdps__api.html#gaf6a7c6b7c9f7a52aac051af0aa6ef729">XSdPs_MmcModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga9bfc7e9f44c30d5b468eec19d2f92a1f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_SEC_COUNT_BYTE2&#160;&#160;&#160;213U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD Sector count byte 2. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit()</a>, and <a class="el" href="group__sdps__api.html#gaf6a7c6b7c9f7a52aac051af0aa6ef729">XSdPs_MmcModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga87cf522720c21983a95b60ecf92c5f60"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_SEC_COUNT_BYTE3&#160;&#160;&#160;214U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD Sector count byte 3. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit()</a>, and <a class="el" href="group__sdps__api.html#gaf6a7c6b7c9f7a52aac051af0aa6ef729">XSdPs_MmcModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="gaed489daacfd9447abba7e2098e0d9ae4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EXT_CSD_SEC_COUNT_BYTE4&#160;&#160;&#160;215U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CSD Sector count byte 4. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit()</a>, and <a class="el" href="group__sdps__api.html#gaf6a7c6b7c9f7a52aac051af0aa6ef729">XSdPs_MmcModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga77a17479fd0519869661c9e71b82a82c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define HIGH_SPEED_SUPPORT&#160;&#160;&#160;0x2U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>High Speed support. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga85fda3522e69a1bf85f7dcd97b6023a1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MAX_TIMEOUT&#160;&#160;&#160;0x1FFFFFFFU</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Maximum Timeout. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gaf0101a5bb2238bcf0279c3e4c0a33ccb">XSdPs_CheckBusHigh()</a>.</p>

</div>
</div>
<a class="anchor" id="gaf7596df11ad001d37fd1f4482a817270"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MAX_TUNING_COUNT&#160;&#160;&#160;40U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Maximum Tuning count. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga089a1b91f436e99b0663b91c3038e9ce">XSdPs_AutoTuning()</a>.</p>

</div>
</div>
<a class="anchor" id="ga40c201c512bf82c9cc12883af000fb2b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SCR_SPEC_VER_3&#160;&#160;&#160;0x80U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>SCR spec ver 3. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga5348592d5802b364df8d3e96c0a3c454"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SD_CLK_19_MHZ&#160;&#160;&#160;19000000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>19MHz clock </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum()</a>.</p>

</div>
</div>
<a class="anchor" id="gaaa8483d5e22a34ded603eb88e1805aa0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SD_CLK_25_MHZ&#160;&#160;&#160;25000000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>25MHz clock </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum()</a>.</p>

</div>
</div>
<a class="anchor" id="ga671326aa4ef3737f7f31a6c929c3604f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SD_CLK_26_MHZ&#160;&#160;&#160;26000000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>26MHz clock </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga8683eac6348837f171e31b10d27c8f13">XSdPs_MmcCardEnum()</a>.</p>

</div>
</div>
<a class="anchor" id="gab6d1efc7e1e190a2a265752012d21bf7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SD_HS_MODE_ENABLE&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>User configuration option to enable or disable SD HS mode. </p>
<p>By default SD HS mode is disabled for Versal and enabled for other platforms. </p>

</div>
</div>
<a class="anchor" id="gab6d8b9d8dfb5c12e16fee49452b1c1b1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define UHS_DDR50_SUPPORT&#160;&#160;&#160;0x10U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>DDR50 support. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gafe05874a0c1191faf537b69af39cdef5">XSdPs_Identify_UhsMode()</a>.</p>

</div>
</div>
<a class="anchor" id="ga7bad99c0dac6870ee0a0a8ca83522852"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define UHS_SDR104_SUPPORT&#160;&#160;&#160;0x8U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>SDR104 support. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gafe05874a0c1191faf537b69af39cdef5">XSdPs_Identify_UhsMode()</a>.</p>

</div>
</div>
<a class="anchor" id="gafcfa86089805c4306f98f4e3838b1858"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define UHS_SDR12_SUPPORT&#160;&#160;&#160;0x1U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>SDR12 support. </p>

</div>
</div>
<a class="anchor" id="ga136ddd489f399b4eb82a3c8aab6717af"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define UHS_SDR25_SUPPORT&#160;&#160;&#160;0x2U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>SDR25 support. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gafe05874a0c1191faf537b69af39cdef5">XSdPs_Identify_UhsMode()</a>.</p>

</div>
</div>
<a class="anchor" id="ga9510331005527a72f48fbe8d2ed16765"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define UHS_SDR50_SUPPORT&#160;&#160;&#160;0x4U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>SDR50 support. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gafe05874a0c1191faf537b69af39cdef5">XSdPs_Identify_UhsMode()</a>, and <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga406577df2b89f9b74838df7567268413"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WIDTH_4_BIT_SUPPORT&#160;&#160;&#160;0x4U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>4-bit width support </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga0f1b246b9a0ce96065516e69ab486a16"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_ACMD41_3V3&#160;&#160;&#160;0x00300000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>3.3 voltage support </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga6c8f3a195672b1225b967c936c2e26ca">XSdPs_CardOpCond()</a>.</p>

</div>
</div>
<a class="anchor" id="ga38948ef8aebdc9fef1edde02dbfecdc7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_ACMD41_HCS&#160;&#160;&#160;0x40000000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>High Capacity Support. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga6c8f3a195672b1225b967c936c2e26ca">XSdPs_CardOpCond()</a>, and <a class="el" href="group__sdps__api.html#ga87790bbe65eea7bf873f401121f4a6f7">XSdPs_IdentifyCard()</a>.</p>

</div>
</div>
<a class="anchor" id="ga893a5ec77671176e84b4885113db80f5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_BLK_SIZE_512_MASK&#160;&#160;&#160;0x200U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Blk Size 512. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga24e128116e1fd880b3ed1ffe7709e75d">XSdPs_GetCsd()</a>, <a class="el" href="group__sdps__api.html#ga90976f95bfd56ede8ee75175610c4c58">XSdPs_HostConfig()</a>, <a class="el" href="group__sdps__api.html#gae55b1aa663629e99a9da94619c7487c5">XSdPs_MmcCardInitialize()</a>, <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>, and <a class="el" href="group__sdps__api.html#ga78d4cd8fc91d6c32b6ed35bd86581cb3">XSdPs_SetupTransfer()</a>.</p>

</div>
</div>
<a class="anchor" id="gae0c50e51df911268acccdd1d8d46b878"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_CMD1_DUAL_VOL&#160;&#160;&#160;0x00FF8010U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CMD1 for Dual voltage. </p>

</div>
</div>
<a class="anchor" id="ga59829d4d2c22b281cd9ab09e63c48d1f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_CMD1_HIGH_VOL&#160;&#160;&#160;0x00FF8000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CMD1 for High voltage. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga6c8f3a195672b1225b967c936c2e26ca">XSdPs_CardOpCond()</a>, and <a class="el" href="group__sdps__api.html#ga87790bbe65eea7bf873f401121f4a6f7">XSdPs_IdentifyCard()</a>.</p>

</div>
</div>
<a class="anchor" id="gae4fc5b8635d5370e57487b3fe8084396"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_CMD8_VOL_PATTERN&#160;&#160;&#160;0x1AAU</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CMD8 voltage pattern. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga121220c9912174a846e46a4c1ef388d3">XSdPs_CardIfCond()</a>.</p>

</div>
</div>
<a class="anchor" id="gad5f983cd6daadb92a96fa4e7674541cc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_CT_ERROR&#160;&#160;&#160;0x2L</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Command timeout flag. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga121220c9912174a846e46a4c1ef388d3">XSdPs_CardIfCond()</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

</div>
</div>
<a class="anchor" id="ga8ea1bb6ebaa47630e35391dda14b3c9f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_RESPOCR_READY&#160;&#160;&#160;0x80000000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Ready response. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga6c8f3a195672b1225b967c936c2e26ca">XSdPs_CardOpCond()</a>.</p>

</div>
</div>
<a class="anchor" id="ga595cc431f6b2f4697e6d39f20ca7e2ea"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_VERSAL_SD0_BASE&#160;&#160;&#160;0xF1040000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Versal SD0 Baseaddress. </p>

</div>
</div>
<a class="anchor" id="ga141c6ee970bedfb72b987c201844dcde"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_VERSAL_SD1_BASE&#160;&#160;&#160;0xF1050000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Versal SD1 Baseaddress. </p>

</div>
</div>
<a class="anchor" id="ga206b703b7f911793694382fed5b5ff60"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_ZYNQMP_SD0_BASE&#160;&#160;&#160;0xFF160000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ZynqMP SD0 Baseaddress. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gacf453a36b7ec19fb4b5dbfda827cc6a7">XSdPs_ConfigTapDelay()</a>, and <a class="el" href="group__sdps__api.html#gaf51d4f72c727b7d28592ac797fe5d467">XSdPs_DllRstCtrl()</a>.</p>

</div>
</div>
<a class="anchor" id="ga20a4495876d4efadbb543db0974af396"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSDPS_ZYNQMP_SD1_BASE&#160;&#160;&#160;0xFF170000U</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ZynqMP SD1 Baseaddress. </p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga089a1b91f436e99b0663b91c3038e9ce"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_AutoTuning </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function is used to do the Auto tuning. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a069e352a2e02b9a9c0f61787549817db">XSdPs::BusWidth</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="group__sdps__api.html#gaf7596df11ad001d37fd1f4482a817270">MAX_TUNING_COUNT</a>, <a class="el" href="struct_x_sd_ps.html#a4a098e7835929d87e01f9cf7a9091598">XSdPs::TransferMode</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, and <a class="el" href="group__sdps__api.html#ga2e868dda7aa547805fe79f9e840059e5">XSdPs_SetExecTuning()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gad8446a2398d2a9d346f9a52bf700f42d">XSdPs_Execute_Tuning()</a>.</p>

</div>
</div>
<a class="anchor" id="ga489b7d969537f9d455ec128a390a749d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CalcBusSpeed </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32 *&#160;</td>
          <td class="paramname"><em>Arg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Calculates the bus speed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Arg</td><td>Argument to be sent along with the command. This could be address or any other information</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if success</li>
<li>XST_FAILURE if failure </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#aa22055804ffd9cbe6885b2abe40fee86">XSdPs::BusSpeed</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#af363c990cbd2a7c2ac2fedef7041f082">XSdPs::IsTuningDone</a>, and <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga9dee6f11ef102eebf0440c20ec1caa8c">XSdPs_Change_MmcBusSpeed()</a>, and <a class="el" href="group__sdps__api.html#ga273b141e9bacac12fd3b3123b7827faa">XSdPs_Change_SdBusSpeed()</a>.</p>

</div>
</div>
<a class="anchor" id="gacd492dfefb8a2fe67964993032250bd4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 XSdPs_CalcClock </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>SelFreq</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Calculates the clock divisor value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">SelFreq</td><td>Selected frequency</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Clock divisor value </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, and <a class="el" href="struct_x_sd_ps___config.html#a0f3c5d739bd1567d28b1ef827aedc75b">XSdPs_Config::InputClockHz</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga45d325b142a6526ec0468d1fbc34c471">XSdPs_SetClock()</a>.</p>

</div>
</div>
<a class="anchor" id="ga121220c9912174a846e46a4c1ef388d3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CardIfCond </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sends command to get the card interface details. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a0b6e466f05d6ac3fb4916a640b0c02c5">XSdPs::Card_Version</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="group__sdps__api.html#gae4fc5b8635d5370e57487b3fe8084396">XSDPS_CMD8_VOL_PATTERN</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, <a class="el" href="group__sdps__api.html#gad5f983cd6daadb92a96fa4e7674541cc">XSDPS_CT_ERROR</a>, and <a class="el" href="group__sdps__api.html#gab802e347cc12cdd73d4d9dd7737535e6">XSdPs_Reset()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum()</a>.</p>

</div>
</div>
<a class="anchor" id="ga3c3ab46b98e997b8439af4b149445811"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CardInitialize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes Card with Identification mode sequence. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure - could be because a) SD is already initialized b) There is no card inserted c) One of the steps (commands) in the initialization cycle failed </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#aa22055804ffd9cbe6885b2abe40fee86">XSdPs::BusSpeed</a>, <a class="el" href="struct_x_sd_ps.html#a069e352a2e02b9a9c0f61787549817db">XSdPs::BusWidth</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="struct_x_sd_ps.html#ad43dbd76cb2740f110f3088a8b592006">XSdPs::Switch1v8</a>, <a class="el" href="group__sdps__api.html#ga1f8661e4ae53a7c29b3fd44cc56a3673">XSdPs_Change_ClkFreq()</a>, <a class="el" href="group__sdps__api.html#ga87790bbe65eea7bf873f401121f4a6f7">XSdPs_IdentifyCard()</a>, <a class="el" href="group__sdps__api.html#gae55b1aa663629e99a9da94619c7487c5">XSdPs_MmcCardInitialize()</a>, and <a class="el" href="group__sdps__api.html#ga8e9a576dfdb4440a795eb6e712994050">XSdPs_SdCardInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="ga6c8f3a195672b1225b967c936c2e26ca"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CardOpCond </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sends command to get the card operating condition. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps___config.html#aea317a5fc926ce97c26cd7deeecb0c0f">XSdPs_Config::BusWidth</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, <a class="el" href="struct_x_sd_ps.html#a1b42689f5e0abe7e468108755a1691fd">XSdPs::HCS</a>, <a class="el" href="struct_x_sd_ps.html#ad43dbd76cb2740f110f3088a8b592006">XSdPs::Switch1v8</a>, <a class="el" href="group__sdps__api.html#ga0f1b246b9a0ce96065516e69ab486a16">XSDPS_ACMD41_3V3</a>, <a class="el" href="group__sdps__api.html#ga38948ef8aebdc9fef1edde02dbfecdc7">XSDPS_ACMD41_HCS</a>, <a class="el" href="group__sdps__api.html#ga59829d4d2c22b281cd9ab09e63c48d1f">XSDPS_CMD1_HIGH_VOL</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, <a class="el" href="group__sdps__api.html#ga8ea1bb6ebaa47630e35391dda14b3c9f">XSDPS_RESPOCR_READY</a>, and <a class="el" href="group__sdps__api.html#gac487bcb38cd80e158c7b833b4b3be34d">XSdPs_Switch_Voltage()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga8683eac6348837f171e31b10d27c8f13">XSdPs_MmcCardEnum()</a>, and <a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum()</a>.</p>

</div>
</div>
<a class="anchor" id="ga85c3c8f706e9f35f21eb11c69e622870"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CardReset </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sends CMD0 to reset the card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga8683eac6348837f171e31b10d27c8f13">XSdPs_MmcCardEnum()</a>, and <a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum()</a>.</p>

</div>
</div>
<a class="anchor" id="ga6b65625dd94d082f21d8dedfdfd8db97"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CardSetVoltage18 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the card voltage to 1.8 V. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="group__sdps__api.html#gad6793165c476a72b093f179766ab176f">XSdPs_EnableClock()</a>, and <a class="el" href="group__sdps__api.html#gab75b25b7d98ac1e72aa60cda683ffcda">XSdPs_SetVoltage18()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>, and <a class="el" href="group__sdps__api.html#gac487bcb38cd80e158c7b833b4b3be34d">XSdPs_Switch_Voltage()</a>.</p>

</div>
</div>
<a class="anchor" id="gaf99da6fcfbc311afcd2d6e8a94c5fe55"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CfgInitialize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps___config.html">XSdPs_Config</a> *&#160;</td>
          <td class="paramname"><em>ConfigPtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">UINTPTR&#160;</td>
          <td class="paramname"><em>EffectiveAddr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes a specific <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance so that the driver is ready to use. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">ConfigPtr</td><td>Reference to a structure containing information about a specific SD device. This function initializes an InstancePtr object for a specific device specified by the contents of Configuration. </td></tr>
    <tr><td class="paramname">EffectiveAddr</td><td>Device base address in the virtual memory address space. The caller is responsible for keeping the address mapping from EffectiveAddr to the device physical base address unchanged once this function is invoked. Unexpected errors may occur if the address mapping changes after this function is called. If address translation is not used, use ConfigPtr-&gt;Config. BaseAddress for this device.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if successful.</li>
<li>XST_DEVICE_IS_STARTED if the device is already started. It must be stopped to re-initialize.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>This function initializes the host controller. Initial clock of 400 KHz is set. Voltage of 3.3 V is selected as that is supported by host. Interrupts status is enabled and signal disabled by default. Default data direction is card to host and 32 bit ADMA2 is selected. Default Block size is 512 bytes. </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a7fe36b608a4251f5b93c9c74cfb85e08">XSdPs_Config::BankNumber</a>, <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9f2cc68e1e0155d5a70c6d7323fe39c9">XSdPs::BlkSize</a>, <a class="el" href="struct_x_sd_ps___config.html#aea317a5fc926ce97c26cd7deeecb0c0f">XSdPs_Config::BusWidth</a>, <a class="el" href="struct_x_sd_ps___config.html#a494f4186575a737efe3f8b3b9848c3c7">XSdPs_Config::CardDetect</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps___config.html#a02ef7758fed8299c73c8dff376c7a166">XSdPs_Config::DeviceId</a>, <a class="el" href="struct_x_sd_ps.html#af0e45cda323df91369aa88c61d8e00e2">XSdPs::Dma64BitAddr</a>, <a class="el" href="struct_x_sd_ps___config.html#a892a82eef72bba816d1576cc8b4aa1ba">XSdPs_Config::HasEMIO</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, <a class="el" href="struct_x_sd_ps.html#ad8613960aa0353d5a3515d9bc8d8540a">XSdPs::Host_Caps</a>, <a class="el" href="struct_x_sd_ps___config.html#a0f3c5d739bd1567d28b1ef827aedc75b">XSdPs_Config::InputClockHz</a>, <a class="el" href="struct_x_sd_ps.html#aae169220856ab624877027540c585b93">XSdPs::IsBusy</a>, <a class="el" href="struct_x_sd_ps___config.html#a1f220a7f0690a1d0c7fd0a95b5cec14c">XSdPs_Config::IsCacheCoherent</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="struct_x_sd_ps.html#af363c990cbd2a7c2ac2fedef7041f082">XSdPs::IsTuningDone</a>, <a class="el" href="struct_x_sd_ps.html#ace5e3ce5b40302079652d5244fc26461">XSdPs::ITapDelay</a>, <a class="el" href="struct_x_sd_ps___config.html#a14ecdc28f2bfb7947ac241e0025b78b5">XSdPs_Config::ITapDly_DDR_Clk50</a>, <a class="el" href="struct_x_sd_ps___config.html#a6fb9aee8d2b99bd35fc1f328425ea86f">XSdPs_Config::ITapDly_SDR_Clk50</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="struct_x_sd_ps.html#a5c05548361b08986315685d826851c3c">XSdPs::OTapDelay</a>, <a class="el" href="struct_x_sd_ps___config.html#a2ab8b411b04ba543826fdd91794b4c87">XSdPs_Config::OTapDly_DDR_Clk200</a>, <a class="el" href="struct_x_sd_ps___config.html#a97d8fe542ee0224d85448f3e0cc1877c">XSdPs_Config::OTapDly_DDR_Clk50</a>, <a class="el" href="struct_x_sd_ps___config.html#a6c15fcbb080e3e2b428135eb21c02d8b">XSdPs_Config::OTapDly_SDR_Clk100</a>, <a class="el" href="struct_x_sd_ps___config.html#a365ea7869549e591ca1e48a3c89d91ca">XSdPs_Config::OTapDly_SDR_Clk200</a>, <a class="el" href="struct_x_sd_ps___config.html#ab88ed07cfc347e97ac5391b602081b4c">XSdPs_Config::OTapDly_SDR_Clk50</a>, <a class="el" href="struct_x_sd_ps.html#afb72007125fc5046392961ad99999ad9">XSdPs::SectorCount</a>, <a class="el" href="struct_x_sd_ps.html#a227dd8d81f553fb5d647a3a21b42d0c6">XSdPs::SlcrBaseAddr</a>, <a class="el" href="struct_x_sd_ps___config.html#a97543575628c859c83c69a772df955ee">XSdPs_Config::SlotType</a>, <a class="el" href="struct_x_sd_ps___config.html#a096af7ddafe53bdf7e4359f3555ae2c4">XSdPs_Config::WriteProtect</a>, <a class="el" href="group__sdps__api.html#ga90976f95bfd56ede8ee75175610c4c58">XSdPs_HostConfig()</a>, and <a class="el" href="group__sdps__api.html#ga43c82653cd80c9c1eb82db2eec0d7718">XSdPs_ResetConfig()</a>.</p>

</div>
</div>
<a class="anchor" id="ga6bc000fb4ce51502058f2e351c90fc19"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Change_BusSpeed </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets high speed in card and host. </p>
<p>Changes clock in host accordingly.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if successful.</li>
<li>XST_FAILURE if fail. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#aa22055804ffd9cbe6885b2abe40fee86">XSdPs::BusSpeed</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="struct_x_sd_ps.html#af363c990cbd2a7c2ac2fedef7041f082">XSdPs::IsTuningDone</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="group__sdps__api.html#ga1f8661e4ae53a7c29b3fd44cc56a3673">XSdPs_Change_ClkFreq()</a>, <a class="el" href="group__sdps__api.html#ga9dee6f11ef102eebf0440c20ec1caa8c">XSdPs_Change_MmcBusSpeed()</a>, <a class="el" href="group__sdps__api.html#ga273b141e9bacac12fd3b3123b7827faa">XSdPs_Change_SdBusSpeed()</a>, and <a class="el" href="group__sdps__api.html#gad8446a2398d2a9d346f9a52bf700f42d">XSdPs_Execute_Tuning()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit()</a>, <a class="el" href="group__sdps__api.html#gaf6a7c6b7c9f7a52aac051af0aa6ef729">XSdPs_MmcModeInit()</a>, and <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="gaf11db1719933123762fecb790a2977da"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Change_BusWidth </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets bus width to 4-bit in card and host. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if successful.</li>
<li>XST_FAILURE if fail. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps___config.html#aea317a5fc926ce97c26cd7deeecb0c0f">XSdPs_Config::BusWidth</a>, <a class="el" href="struct_x_sd_ps.html#a069e352a2e02b9a9c0f61787549817db">XSdPs::BusWidth</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="struct_x_sd_ps.html#a6c40b5686bd92c1a00b208cce84583c7">XSdPs::RelCardAddr</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, and <a class="el" href="group__sdps__api.html#gaee773eef8e260b4498dc607061eb18f6">XSdPs_Set_Mmc_ExtCsd()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit()</a>, <a class="el" href="group__sdps__api.html#gaf6a7c6b7c9f7a52aac051af0aa6ef729">XSdPs_MmcModeInit()</a>, and <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga1f8661e4ae53a7c29b3fd44cc56a3673"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Change_ClkFreq </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>SelFreq</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to change clock frequency to a given value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">SelFreq</td><td>Clock frequency in Hz.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None</dd></dl>
<dl class="section note"><dt>Note</dt><dd>This API will change clock frequency to the value less than or equal to the given value using the permissible dividors. </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="struct_x_sd_ps.html#ace5e3ce5b40302079652d5244fc26461">XSdPs::ITapDelay</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="struct_x_sd_ps.html#a5c05548361b08986315685d826851c3c">XSdPs::OTapDelay</a>, <a class="el" href="group__sdps__api.html#ga45d325b142a6526ec0468d1fbc34c471">XSdPs_SetClock()</a>, and <a class="el" href="group__sdps__api.html#ga172c91b6b33e2e94ded0c3d58797411d">XSdPs_SetTapDelay()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga3c3ab46b98e997b8439af4b149445811">XSdPs_CardInitialize()</a>, <a class="el" href="group__sdps__api.html#ga6bc000fb4ce51502058f2e351c90fc19">XSdPs_Change_BusSpeed()</a>, <a class="el" href="group__sdps__api.html#ga8683eac6348837f171e31b10d27c8f13">XSdPs_MmcCardEnum()</a>, and <a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum()</a>.</p>

</div>
</div>
<a class="anchor" id="ga9dee6f11ef102eebf0440c20ec1caa8c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Change_MmcBusSpeed </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Changes the eMMC bus speed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="group__sdps__api.html#ga489b7d969537f9d455ec128a390a749d">XSdPs_CalcBusSpeed()</a>, <a class="el" href="group__sdps__api.html#gaaa85509249cb90b33c8a201a751bdd8f">XSdps_CheckTransferDone()</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga6bc000fb4ce51502058f2e351c90fc19">XSdPs_Change_BusSpeed()</a>.</p>

</div>
</div>
<a class="anchor" id="ga273b141e9bacac12fd3b3123b7827faa"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Change_SdBusSpeed </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Changes the SD Bus Speed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="struct_x_sd_ps.html#ad43dbd76cb2740f110f3088a8b592006">XSdPs::Switch1v8</a>, <a class="el" href="group__sdps__api.html#ga489b7d969537f9d455ec128a390a749d">XSdPs_CalcBusSpeed()</a>, <a class="el" href="group__sdps__api.html#gaaa85509249cb90b33c8a201a751bdd8f">XSdps_CheckTransferDone()</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, and <a class="el" href="group__sdps__api.html#ga4fde94c65a7c6e64e2444cb33e7d0431">XSdPs_SetupReadDma()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga6bc000fb4ce51502058f2e351c90fc19">XSdPs_Change_BusSpeed()</a>.</p>

</div>
</div>
<a class="anchor" id="gaf0101a5bb2238bcf0279c3e4c0a33ccb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CheckBusHigh </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if the CMD and DAT buses are high. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="group__sdps__api.html#ga85fda3522e69a1bf85f7dcd97b6023a1">MAX_TIMEOUT</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gac487bcb38cd80e158c7b833b4b3be34d">XSdPs_Switch_Voltage()</a>.</p>

</div>
</div>
<a class="anchor" id="ga3c9d104a1d7f9e14d8b2b79fbb47702d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CheckBusIdle </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Checks if the CMD/DATA bus is idle or not. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Value</td><td>Value to be selected Cmd bus or Dat bus.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, and <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga88cdddd905825791ef9b682eb5adfff8">XSdPs_Idle()</a>, <a class="el" href="group__sdps__api.html#ga1af3178b4b24c991b431eb7a0aa3b23b">XSdPs_SetBlkSize()</a>, and <a class="el" href="group__sdps__api.html#ga38aad34c4dd588d187c6053a9514c52e">XSdPs_SetupCmd()</a>.</p>

</div>
</div>
<a class="anchor" id="ga9c1007ef091d85466eb133a80b9f3213"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CheckCardDetect </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Checks if the card is present or not. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps___config.html#a494f4186575a737efe3f8b3b9848c3c7">XSdPs_Config::CardDetect</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, and <a class="el" href="struct_x_sd_ps.html#ad8613960aa0353d5a3515d9bc8d8540a">XSdPs::Host_Caps</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga8683eac6348837f171e31b10d27c8f13">XSdPs_MmcCardEnum()</a>, and <a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum()</a>.</p>

</div>
</div>
<a class="anchor" id="gaa0025016d626fdafc3ed1dc856834f12"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CheckEmmcTiming </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>ExtCsd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Checks the eMMC timing. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">ExtCsd</td><td>Extended CSD register from the card.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, and <a class="el" href="group__sdps__api.html#ga69e8d7cd927da4273a12d0d5fb3f36ff">XSdPs_Get_Mmc_ExtCsd()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga555d8f458181719d701f93a9bd023ed2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CheckReadTransfer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Checks if the transfer is completed successfully. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if transfer was successful</li>
<li>XST_FAILURE if failure</li>
<li>XST_DEVICE_BUSY - if the transfer is still in progress </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, and <a class="el" href="group__sdps__api.html#gafa28027fec9472b8b49c61ad1c9489f2">XSdPs_CheckTransferComplete()</a>.</p>

</div>
</div>
<a class="anchor" id="gae561ac5fb9655a8c8523a7afd848f8cd"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CheckResetDone </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8&#160;</td>
          <td class="paramname"><em>Value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Checks for Reset Done bits to be cleared after a reset assert. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Value</td><td>Bits to be checked to be cleared.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, and <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gab802e347cc12cdd73d4d9dd7737535e6">XSdPs_Reset()</a>.</p>

</div>
</div>
<a class="anchor" id="gafa28027fec9472b8b49c61ad1c9489f2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CheckTransferComplete </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Checks for the transfer complete. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if transfer was successful</li>
<li>XST_FAILURE if failure</li>
<li>XST_DEVICE_BUSY - if the transfer is still in progress </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="struct_x_sd_ps.html#aae169220856ab624877027540c585b93">XSdPs::IsBusy</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga555d8f458181719d701f93a9bd023ed2">XSdPs_CheckReadTransfer()</a>, and <a class="el" href="group__sdps__api.html#gaa75b4159ddf2d517b2f8452bb7a704ca">XSdPs_CheckWriteTransfer()</a>.</p>

</div>
</div>
<a class="anchor" id="gaaa85509249cb90b33c8a201a751bdd8f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdps_CheckTransferDone </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Checks if the transfer is completed successfully. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, and <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga9dee6f11ef102eebf0440c20ec1caa8c">XSdPs_Change_MmcBusSpeed()</a>, <a class="el" href="group__sdps__api.html#ga273b141e9bacac12fd3b3123b7827faa">XSdPs_Change_SdBusSpeed()</a>, <a class="el" href="group__sdps__api.html#gafc7e71cb62142d0ef939336195102666">XSdPs_Get_BusSpeed()</a>, <a class="el" href="group__sdps__api.html#ga864452e1802367600d196ccc37310f7c">XSdPs_Get_BusWidth()</a>, <a class="el" href="group__sdps__api.html#ga69e8d7cd927da4273a12d0d5fb3f36ff">XSdPs_Get_Mmc_ExtCsd()</a>, <a class="el" href="group__sdps__api.html#gaa26e9b4a046701024b01b1b0cb48ed08">XSdPs_Get_Status()</a>, <a class="el" href="group__sdps__api.html#ga8dfe3686ed74d09a2a46a7b5cddcde47">XSdPs_ReadPolled()</a>, <a class="el" href="group__sdps__api.html#ga5ab803ced3accc20c54eee342e6e5b52">XSdPs_SendErase()</a>, <a class="el" href="group__sdps__api.html#gaee773eef8e260b4498dc607061eb18f6">XSdPs_Set_Mmc_ExtCsd()</a>, and <a class="el" href="group__sdps__api.html#ga69aa57979c1ef9b9ec3fbdc6d8ab7277">XSdPs_WritePolled()</a>.</p>

</div>
</div>
<a class="anchor" id="gafa42ece30f32bbc385f0533873461b2d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CheckVoltage18 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Checks if the voltage is set to 1.8 V or not. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if voltage is 1.8V</li>
<li>XST_FAILURE if voltage is not 1.8V </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, and <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gab75b25b7d98ac1e72aa60cda683ffcda">XSdPs_SetVoltage18()</a>.</p>

</div>
</div>
<a class="anchor" id="gaa75b4159ddf2d517b2f8452bb7a704ca"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CheckWriteTransfer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Checks for the write transfer completed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if transfer was successful</li>
<li>XST_FAILURE if failure</li>
<li>XST_DEVICE_BUSY - if the transfer is still in progress </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, and <a class="el" href="group__sdps__api.html#gafa28027fec9472b8b49c61ad1c9489f2">XSdPs_CheckTransferComplete()</a>.</p>

</div>
</div>
<a class="anchor" id="ga1c5c45efb0402b9d8e6a33d036dbd220"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_CmdTransfer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Cmd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Arg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Generates SD command. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Cmd</td><td>Command to be sent. </td></tr>
    <tr><td class="paramname">Arg</td><td>Argument to be sent along with the command. This could be address or any other information </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>Block count passed by the user.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure - could be because another transfer is in progress or command or data inhibit is set </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="group__sdps__api.html#gad5f983cd6daadb92a96fa4e7674541cc">XSDPS_CT_ERROR</a>, <a class="el" href="group__sdps__api.html#ga0446c3fbdc875f25c1bbf74efa3ff970">XSdPs_SendCmd()</a>, and <a class="el" href="group__sdps__api.html#ga38aad34c4dd588d187c6053a9514c52e">XSdPs_SetupCmd()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga089a1b91f436e99b0663b91c3038e9ce">XSdPs_AutoTuning()</a>, <a class="el" href="group__sdps__api.html#ga121220c9912174a846e46a4c1ef388d3">XSdPs_CardIfCond()</a>, <a class="el" href="group__sdps__api.html#ga6c8f3a195672b1225b967c936c2e26ca">XSdPs_CardOpCond()</a>, <a class="el" href="group__sdps__api.html#ga85c3c8f706e9f35f21eb11c69e622870">XSdPs_CardReset()</a>, <a class="el" href="group__sdps__api.html#gaf11db1719933123762fecb790a2977da">XSdPs_Change_BusWidth()</a>, <a class="el" href="group__sdps__api.html#ga9dee6f11ef102eebf0440c20ec1caa8c">XSdPs_Change_MmcBusSpeed()</a>, <a class="el" href="group__sdps__api.html#ga273b141e9bacac12fd3b3123b7827faa">XSdPs_Change_SdBusSpeed()</a>, <a class="el" href="group__sdps__api.html#gafc7e71cb62142d0ef939336195102666">XSdPs_Get_BusSpeed()</a>, <a class="el" href="group__sdps__api.html#ga864452e1802367600d196ccc37310f7c">XSdPs_Get_BusWidth()</a>, <a class="el" href="group__sdps__api.html#ga69e8d7cd927da4273a12d0d5fb3f36ff">XSdPs_Get_Mmc_ExtCsd()</a>, <a class="el" href="group__sdps__api.html#gaa26e9b4a046701024b01b1b0cb48ed08">XSdPs_Get_Status()</a>, <a class="el" href="group__sdps__api.html#ga9645b197623dae8c5183bb3d31c7b0eb">XSdPs_GetCardId()</a>, <a class="el" href="group__sdps__api.html#ga24e128116e1fd880b3ed1ffe7709e75d">XSdPs_GetCsd()</a>, <a class="el" href="group__sdps__api.html#ga87790bbe65eea7bf873f401121f4a6f7">XSdPs_IdentifyCard()</a>, <a class="el" href="group__sdps__api.html#ga0be8518af877aa1fe5f7c6b86ac4f7f8">XSdPs_Pullup()</a>, <a class="el" href="group__sdps__api.html#ga15e41cb3481e66918efd4ad7db154b62">XSdPs_Read()</a>, <a class="el" href="group__sdps__api.html#ga17d43f52a8948d5ec4f315641336d115">XSdPs_Select_Card()</a>, <a class="el" href="group__sdps__api.html#ga5ab803ced3accc20c54eee342e6e5b52">XSdPs_SendErase()</a>, <a class="el" href="group__sdps__api.html#gaee773eef8e260b4498dc607061eb18f6">XSdPs_Set_Mmc_ExtCsd()</a>, <a class="el" href="group__sdps__api.html#ga1af3178b4b24c991b431eb7a0aa3b23b">XSdPs_SetBlkSize()</a>, <a class="el" href="group__sdps__api.html#ga9fb2d5662fa3656cafb4a20530def821">XSdPs_SetEndAddr()</a>, <a class="el" href="group__sdps__api.html#ga73b1071173ef4b1a1958773ed5c59a5f">XSdPs_SetStartAddr()</a>, <a class="el" href="group__sdps__api.html#ga1dcb11223d1894628593253fd7144c42">XSdPs_SetupVoltageSwitch()</a>, and <a class="el" href="group__sdps__api.html#gac51519692c6bb54d91aaecb8bcf957d1">XSdPs_Write()</a>.</p>

</div>
</div>
<a class="anchor" id="gacae52488893efc2acb048af3660254f5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_ConfigDma </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Configures the DMA. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga90976f95bfd56ede8ee75175610c4c58">XSdPs_HostConfig()</a>.</p>

</div>
</div>
<a class="anchor" id="ga5d77b69b0e2e4ca66556dc8a90f834c4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_ConfigInterrupt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Configures the Interrupts. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, and <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga90976f95bfd56ede8ee75175610c4c58">XSdPs_HostConfig()</a>.</p>

</div>
</div>
<a class="anchor" id="ga8644655cee22998e56ef1dba7871ac89"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_ConfigPower </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Configures the Power Level. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="struct_x_sd_ps.html#ad8613960aa0353d5a3515d9bc8d8540a">XSdPs::Host_Caps</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga90976f95bfd56ede8ee75175610c4c58">XSdPs_HostConfig()</a>.</p>

</div>
</div>
<a class="anchor" id="gacf453a36b7ec19fb4b5dbfda827cc6a7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_ConfigTapDelay </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Function to configure the Tap Delays. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#ace5e3ce5b40302079652d5244fc26461">XSdPs::ITapDelay</a>, <a class="el" href="struct_x_sd_ps.html#a5c05548361b08986315685d826851c3c">XSdPs::OTapDelay</a>, <a class="el" href="struct_x_sd_ps.html#a227dd8d81f553fb5d647a3a21b42d0c6">XSdPs::SlcrBaseAddr</a>, and <a class="el" href="group__sdps__api.html#ga206b703b7f911793694382fed5b5ff60">XSDPS_ZYNQMP_SD0_BASE</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga172c91b6b33e2e94ded0c3d58797411d">XSdPs_SetTapDelay()</a>.</p>

</div>
</div>
<a class="anchor" id="gaa42580dd8c7438e838e274579d9c4be3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_DisableBusPower </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Disables the bus power. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga88cdddd905825791ef9b682eb5adfff8">XSdPs_Idle()</a>, and <a class="el" href="group__sdps__api.html#ga43c82653cd80c9c1eb82db2eec0d7718">XSdPs_ResetConfig()</a>.</p>

</div>
</div>
<a class="anchor" id="gad837da458a367f226a76d8eda9a09214"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_DllReset </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to reset the DLL. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="group__sdps__api.html#gaf51d4f72c727b7d28592ac797fe5d467">XSdPs_DllRstCtrl()</a>, and <a class="el" href="group__sdps__api.html#gad6793165c476a72b093f179766ab176f">XSdPs_EnableClock()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gad8446a2398d2a9d346f9a52bf700f42d">XSdPs_Execute_Tuning()</a>.</p>

</div>
</div>
<a class="anchor" id="gaf51d4f72c727b7d28592ac797fe5d467"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_DllRstCtrl </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8&#160;</td>
          <td class="paramname"><em>EnRst</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to Set or Reset the DLL. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">EnRst</td><td>Flag indicating whether to Assert or De-assert Reset.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None</dd></dl>
<dl class="section note"><dt>Note</dt><dd>This API is specific to ZynqMP platform. </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a227dd8d81f553fb5d647a3a21b42d0c6">XSdPs::SlcrBaseAddr</a>, and <a class="el" href="group__sdps__api.html#ga206b703b7f911793694382fed5b5ff60">XSDPS_ZYNQMP_SD0_BASE</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gad837da458a367f226a76d8eda9a09214">XSdPs_DllReset()</a>, and <a class="el" href="group__sdps__api.html#ga172c91b6b33e2e94ded0c3d58797411d">XSdPs_SetTapDelay()</a>.</p>

</div>
</div>
<a class="anchor" id="ga643a4036059e0a3094c22f46b1adccc8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_EmmcModeInit </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes eMMC mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization is successful</li>
<li>XST_FAILURE if failure </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#aea317a5fc926ce97c26cd7deeecb0c0f">XSdPs_Config::BusWidth</a>, <a class="el" href="struct_x_sd_ps.html#a069e352a2e02b9a9c0f61787549817db">XSdPs::BusWidth</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="group__sdps__api.html#ga99fcdcae8a8f2a00fe2fd919b6ce1dc2">EXT_CSD_SEC_COUNT_BYTE1</a>, <a class="el" href="group__sdps__api.html#ga9bfc7e9f44c30d5b468eec19d2f92a1f">EXT_CSD_SEC_COUNT_BYTE2</a>, <a class="el" href="group__sdps__api.html#ga87cf522720c21983a95b60ecf92c5f60">EXT_CSD_SEC_COUNT_BYTE3</a>, <a class="el" href="group__sdps__api.html#gaed489daacfd9447abba7e2098e0d9ae4">EXT_CSD_SEC_COUNT_BYTE4</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="struct_x_sd_ps.html#afb72007125fc5046392961ad99999ad9">XSdPs::SectorCount</a>, <a class="el" href="group__sdps__api.html#ga6bc000fb4ce51502058f2e351c90fc19">XSdPs_Change_BusSpeed()</a>, <a class="el" href="group__sdps__api.html#gaf11db1719933123762fecb790a2977da">XSdPs_Change_BusWidth()</a>, <a class="el" href="group__sdps__api.html#gaa0025016d626fdafc3ed1dc856834f12">XSdPs_CheckEmmcTiming()</a>, <a class="el" href="group__sdps__api.html#ga69e8d7cd927da4273a12d0d5fb3f36ff">XSdPs_Get_Mmc_ExtCsd()</a>, <a class="el" href="group__sdps__api.html#ga0941061de89eef852f88a589b743983c">XSdPs_IdentifyEmmcMode()</a>, and <a class="el" href="group__sdps__api.html#gaee773eef8e260b4498dc607061eb18f6">XSdPs_Set_Mmc_ExtCsd()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gae55b1aa663629e99a9da94619c7487c5">XSdPs_MmcCardInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="gaca5e99fecb052c0552ab2d7a692a21ad"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_EnableBusPower </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Enables the bus power. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga43c82653cd80c9c1eb82db2eec0d7718">XSdPs_ResetConfig()</a>.</p>

</div>
</div>
<a class="anchor" id="gad6793165c476a72b093f179766ab176f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_EnableClock </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u16&#160;</td>
          <td class="paramname"><em>ClockReg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Enables the clock. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">ClockReg</td><td>Clock value to be set.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if success</li>
<li>XST_FAILURE if failure </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, and <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga6b65625dd94d082f21d8dedfdfd8db97">XSdPs_CardSetVoltage18()</a>, <a class="el" href="group__sdps__api.html#gad837da458a367f226a76d8eda9a09214">XSdPs_DllReset()</a>, and <a class="el" href="group__sdps__api.html#ga45d325b142a6526ec0468d1fbc34c471">XSdPs_SetClock()</a>.</p>

</div>
</div>
<a class="anchor" id="gae356e151de825904653850dc1f2de4e7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Erase </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>StartAddr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>EndAddr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs Erase operation on the given address range. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">StartAddr</td><td>Address of the first write block to be erased. </td></tr>
    <tr><td class="paramname">EndAddr</td><td>Address of the last write block of the continuous range to be erased.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if erase is successful</li>
<li>XST_FAILURE if failure - could be because another transfer is in progress or card not present or erase operation failure. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps___config.html#a494f4186575a737efe3f8b3b9848c3c7">XSdPs_Config::CardDetect</a>, <a class="el" href="struct_x_sd_ps.html#a33a193ab2bde892a55f842b0d49856d1">XSdPs::CardSpecData</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, <a class="el" href="struct_x_sd_ps.html#ad8613960aa0353d5a3515d9bc8d8540a">XSdPs::Host_Caps</a>, <a class="el" href="struct_x_sd_ps.html#aae169220856ab624877027540c585b93">XSdPs::IsBusy</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="struct_x_sd_ps.html#a4a098e7835929d87e01f9cf7a9091598">XSdPs::TransferMode</a>, <a class="el" href="group__sdps__api.html#ga5ab803ced3accc20c54eee342e6e5b52">XSdPs_SendErase()</a>, <a class="el" href="group__sdps__api.html#ga9fb2d5662fa3656cafb4a20530def821">XSdPs_SetEndAddr()</a>, and <a class="el" href="group__sdps__api.html#ga73b1071173ef4b1a1958773ed5c59a5f">XSdPs_SetStartAddr()</a>.</p>

</div>
</div>
<a class="anchor" id="gad8446a2398d2a9d346f9a52bf700f42d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Execute_Tuning </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs SD tuning. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="group__sdps__api.html#ga089a1b91f436e99b0663b91c3038e9ce">XSdPs_AutoTuning()</a>, and <a class="el" href="group__sdps__api.html#gad837da458a367f226a76d8eda9a09214">XSdPs_DllReset()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga6bc000fb4ce51502058f2e351c90fc19">XSdPs_Change_BusSpeed()</a>.</p>

</div>
</div>
<a class="anchor" id="ga959b013962a6b53aa1c52f8ed78153be"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 XSdPs_FrameCmd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Cmd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function frames the Command register for a particular command. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Cmd</td><td>Command to be sent.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Command register value complete with response type and data, CRC and index related flags.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>This generates only the command register value i.e. the upper 16 bits of the transfer mode and command register. This value is already shifted to be upper 16 bits and can be directly OR'ed with transfer mode register value. </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga0446c3fbdc875f25c1bbf74efa3ff970">XSdPs_SendCmd()</a>.</p>

</div>
</div>
<a class="anchor" id="gafc7e71cb62142d0ef939336195102666"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Get_BusSpeed </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>ReadBuff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets bus speed supported by card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">ReadBuff</td><td>Buffer to store function group support data returned by card.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if successful.</li>
<li>XST_FAILURE if fail.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>None. </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps___config.html#a1f220a7f0690a1d0c7fd0a95b5cec14c">XSdPs_Config::IsCacheCoherent</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="group__sdps__api.html#gaaa85509249cb90b33c8a201a751bdd8f">XSdps_CheckTransferDone()</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, and <a class="el" href="group__sdps__api.html#ga4fde94c65a7c6e64e2444cb33e7d0431">XSdPs_SetupReadDma()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga864452e1802367600d196ccc37310f7c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Get_BusWidth </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>ReadBuff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets bus width support by card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">ReadBuff</td><td>Buffer to store SCR register returned by card.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if successful.</li>
<li>XST_FAILURE if fail.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>None. </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps___config.html#a1f220a7f0690a1d0c7fd0a95b5cec14c">XSdPs_Config::IsCacheCoherent</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="struct_x_sd_ps.html#a6c40b5686bd92c1a00b208cce84583c7">XSdPs::RelCardAddr</a>, <a class="el" href="group__sdps__api.html#gaaa85509249cb90b33c8a201a751bdd8f">XSdps_CheckTransferDone()</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, and <a class="el" href="group__sdps__api.html#ga4fde94c65a7c6e64e2444cb33e7d0431">XSdPs_SetupReadDma()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga69e8d7cd927da4273a12d0d5fb3f36ff"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Get_Mmc_ExtCsd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>ReadBuff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets EXT_CSD register of eMMC. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">ReadBuff</td><td>Buffer to store EXT_CSD</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if successful.</li>
<li>XST_FAILURE if fail. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps___config.html#a1f220a7f0690a1d0c7fd0a95b5cec14c">XSdPs_Config::IsCacheCoherent</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="group__sdps__api.html#gaaa85509249cb90b33c8a201a751bdd8f">XSdps_CheckTransferDone()</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, and <a class="el" href="group__sdps__api.html#ga4fde94c65a7c6e64e2444cb33e7d0431">XSdPs_SetupReadDma()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gaa0025016d626fdafc3ed1dc856834f12">XSdPs_CheckEmmcTiming()</a>, <a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit()</a>, and <a class="el" href="group__sdps__api.html#gaf6a7c6b7c9f7a52aac051af0aa6ef729">XSdPs_MmcModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="gaa26e9b4a046701024b01b1b0cb48ed08"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Get_Status </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>SdStatReg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets SD card status information. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">SdStatReg</td><td>Buffer to store status data returned by card.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if successful.</li>
<li>XST_FAILURE if fail. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps___config.html#a1f220a7f0690a1d0c7fd0a95b5cec14c">XSdPs_Config::IsCacheCoherent</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="struct_x_sd_ps.html#a6c40b5686bd92c1a00b208cce84583c7">XSdPs::RelCardAddr</a>, <a class="el" href="group__sdps__api.html#gaaa85509249cb90b33c8a201a751bdd8f">XSdps_CheckTransferDone()</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, and <a class="el" href="group__sdps__api.html#ga4fde94c65a7c6e64e2444cb33e7d0431">XSdPs_SetupReadDma()</a>.</p>

</div>
</div>
<a class="anchor" id="ga9645b197623dae8c5183bb3d31c7b0eb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_GetCardId </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the card ID. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a8219b2ad6434c77a0101b75919fe4a55">XSdPs::CardID</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a6c40b5686bd92c1a00b208cce84583c7">XSdPs::RelCardAddr</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga8683eac6348837f171e31b10d27c8f13">XSdPs_MmcCardEnum()</a>, and <a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum()</a>.</p>

</div>
</div>
<a class="anchor" id="ga24e128116e1fd880b3ed1ffe7709e75d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_GetCsd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the CSD register from the card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a0b6e466f05d6ac3fb4916a640b0c02c5">XSdPs::Card_Version</a>, <a class="el" href="struct_x_sd_ps.html#a33a193ab2bde892a55f842b0d49856d1">XSdPs::CardSpecData</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a6c40b5686bd92c1a00b208cce84583c7">XSdPs::RelCardAddr</a>, <a class="el" href="struct_x_sd_ps.html#afb72007125fc5046392961ad99999ad9">XSdPs::SectorCount</a>, <a class="el" href="group__sdps__api.html#ga893a5ec77671176e84b4885113db80f5">XSDPS_BLK_SIZE_512_MASK</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga8683eac6348837f171e31b10d27c8f13">XSdPs_MmcCardEnum()</a>, and <a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum()</a>.</p>

</div>
</div>
<a class="anchor" id="ga90976f95bfd56ede8ee75175610c4c58"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_HostConfig </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Configures the initial Host. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a4a098e7835929d87e01f9cf7a9091598">XSdPs::TransferMode</a>, <a class="el" href="group__sdps__api.html#ga893a5ec77671176e84b4885113db80f5">XSDPS_BLK_SIZE_512_MASK</a>, <a class="el" href="group__sdps__api.html#gacae52488893efc2acb048af3660254f5">XSdPs_ConfigDma()</a>, <a class="el" href="group__sdps__api.html#ga5d77b69b0e2e4ca66556dc8a90f834c4">XSdPs_ConfigInterrupt()</a>, and <a class="el" href="group__sdps__api.html#ga8644655cee22998e56ef1dba7871ac89">XSdPs_ConfigPower()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gaf99da6fcfbc311afcd2d6e8a94c5fe55">XSdPs_CfgInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="gafe05874a0c1191faf537b69af39cdef5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_Identify_UhsMode </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>ReadBuff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to Identify the supported UHS mode. </p>
<p>This API will assign the corresponding tap delay API to the Config_TapDelay pointer based on the supported bus speed.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">ReadBuff</td><td>Contains the response for CMD6</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None. </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps___config.html#a0f3c5d739bd1567d28b1ef827aedc75b">XSdPs_Config::InputClockHz</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="group__sdps__api.html#gab6d8b9d8dfb5c12e16fee49452b1c1b1">UHS_DDR50_SUPPORT</a>, <a class="el" href="group__sdps__api.html#ga7bad99c0dac6870ee0a0a8ca83522852">UHS_SDR104_SUPPORT</a>, <a class="el" href="group__sdps__api.html#ga136ddd489f399b4eb82a3c8aab6717af">UHS_SDR25_SUPPORT</a>, <a class="el" href="group__sdps__api.html#ga9510331005527a72f48fbe8d2ed16765">UHS_SDR50_SUPPORT</a>, <a class="el" href="group__sdps__api.html#gae8066fed7198c31836229aeb151ab569">XSdPs_SetTapDelay_DDR50()</a>, <a class="el" href="group__sdps__api.html#ga220352b3948b59ad89e32bb71579b861">XSdPs_SetTapDelay_SDR104()</a>, <a class="el" href="group__sdps__api.html#ga0dbbe882b04aab3d81add6021a8698bf">XSdPs_SetTapDelay_SDR25()</a>, and <a class="el" href="group__sdps__api.html#gafc5e8e46a354e7a21b046435382bba12">XSdPs_SetTapDelay_SDR50()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga87790bbe65eea7bf873f401121f4a6f7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_IdentifyCard </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Identifies type of card using CMD0 + CMD1 sequence. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, <a class="el" href="struct_x_sd_ps.html#ad8613960aa0353d5a3515d9bc8d8540a">XSdPs::Host_Caps</a>, <a class="el" href="group__sdps__api.html#ga38948ef8aebdc9fef1edde02dbfecdc7">XSDPS_ACMD41_HCS</a>, <a class="el" href="group__sdps__api.html#ga59829d4d2c22b281cd9ab09e63c48d1f">XSDPS_CMD1_HIGH_VOL</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, and <a class="el" href="group__sdps__api.html#gab802e347cc12cdd73d4d9dd7737535e6">XSdPs_Reset()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga3c3ab46b98e997b8439af4b149445811">XSdPs_CardInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="ga0941061de89eef852f88a589b743983c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_IdentifyEmmcMode </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u8 *&#160;</td>
          <td class="paramname"><em>ExtCsd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Identifies the eMMC speed mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">ExtCsd</td><td>Extended CSD register from the card.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a7fe36b608a4251f5b93c9c74cfb85e08">XSdPs_Config::BankNumber</a>, <a class="el" href="struct_x_sd_ps.html#a069e352a2e02b9a9c0f61787549817db">XSdPs::BusWidth</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="group__sdps__api.html#ga52d080f8ba1068e8190d52806e5a57c0">EXT_CSD_DEVICE_TYPE_BYTE</a>, <a class="el" href="group__sdps__api.html#gab9c4b83ddf8471ff2fa8a4988ba01423">EXT_CSD_DEVICE_TYPE_DDR_1V2_HIGH_SPEED</a>, <a class="el" href="group__sdps__api.html#gad9c2fb1320f91077acfa8b78450c3863">EXT_CSD_DEVICE_TYPE_DDR_1V2_HS400</a>, <a class="el" href="group__sdps__api.html#ga784ed6937b99829ef7a9c249a61482cf">EXT_CSD_DEVICE_TYPE_DDR_1V8_HIGH_SPEED</a>, <a class="el" href="group__sdps__api.html#gab9586aa74011d614d3b87aa6d72962be">EXT_CSD_DEVICE_TYPE_DDR_1V8_HS400</a>, <a class="el" href="group__sdps__api.html#ga8ca877dc2ad27fc4802f6405af288256">EXT_CSD_DEVICE_TYPE_HIGH_SPEED</a>, <a class="el" href="group__sdps__api.html#ga5d8e27bc9f9ab98a143e6a7a7a78ed35">EXT_CSD_DEVICE_TYPE_SDR_1V2_HS200</a>, <a class="el" href="group__sdps__api.html#ga785425c7f7070eddd02dbaf1630dba25">EXT_CSD_DEVICE_TYPE_SDR_1V8_HS200</a>, <a class="el" href="struct_x_sd_ps.html#af363c990cbd2a7c2ac2fedef7041f082">XSdPs::IsTuningDone</a>, <a class="el" href="struct_x_sd_ps.html#ace5e3ce5b40302079652d5244fc26461">XSdPs::ITapDelay</a>, <a class="el" href="struct_x_sd_ps___config.html#a14ecdc28f2bfb7947ac241e0025b78b5">XSdPs_Config::ITapDly_DDR_Clk50</a>, <a class="el" href="struct_x_sd_ps___config.html#a6fb9aee8d2b99bd35fc1f328425ea86f">XSdPs_Config::ITapDly_SDR_Clk50</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="struct_x_sd_ps.html#a5c05548361b08986315685d826851c3c">XSdPs::OTapDelay</a>, <a class="el" href="struct_x_sd_ps___config.html#a97d8fe542ee0224d85448f3e0cc1877c">XSdPs_Config::OTapDly_DDR_Clk50</a>, <a class="el" href="struct_x_sd_ps___config.html#a365ea7869549e591ca1e48a3c89d91ca">XSdPs_Config::OTapDly_SDR_Clk200</a>, and <a class="el" href="struct_x_sd_ps___config.html#ab88ed07cfc347e97ac5391b602081b4c">XSdPs_Config::OTapDly_SDR_Clk50</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga88cdddd905825791ef9b682eb5adfff8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Idle </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to idle the SDIO Interface. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="group__sdps__api.html#ga3c9d104a1d7f9e14d8b2b79fbb47702d">XSdPs_CheckBusIdle()</a>, <a class="el" href="group__sdps__api.html#gaa42580dd8c7438e838e274579d9c4be3">XSdPs_DisableBusPower()</a>, and <a class="el" href="group__sdps__api.html#gab802e347cc12cdd73d4d9dd7737535e6">XSdPs_Reset()</a>.</p>

</div>
</div>
<a class="anchor" id="ga27d6bd37204cdb0c26430efedd8e97eb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_x_sd_ps___config.html">XSdPs_Config</a> * XSdPs_LookupConfig </td>
          <td>(</td>
          <td class="paramtype">u16&#160;</td>
          <td class="paramname"><em>DeviceId</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Looks up the device configuration based on the unique device ID. </p>
<p>A table contains the configuration info for each device in the system.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">DeviceId</td><td>Contains the ID of the device to look up the configuration for.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd></dd></dl>
<p>A pointer to the configuration found or NULL if the specified device ID was not found. See <a class="el" href="xsdps_8h.html">xsdps.h</a> for the definition of <a class="el" href="struct_x_sd_ps___config.html" title="This typedef contains configuration information for the device. ">XSdPs_Config</a>. </p>

<p>References <a class="el" href="group__sdps__api.html#ga40d2b56e1265bf5730e99da60e25dc2a">XSdPs_ConfigTable</a>.</p>

</div>
</div>
<a class="anchor" id="ga8683eac6348837f171e31b10d27c8f13"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_MmcCardEnum </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Enumerates the MMC card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#aa22055804ffd9cbe6885b2abe40fee86">XSdPs::BusSpeed</a>, <a class="el" href="group__sdps__api.html#ga671326aa4ef3737f7f31a6c929c3604f">SD_CLK_26_MHZ</a>, <a class="el" href="group__sdps__api.html#ga6c8f3a195672b1225b967c936c2e26ca">XSdPs_CardOpCond()</a>, <a class="el" href="group__sdps__api.html#ga85c3c8f706e9f35f21eb11c69e622870">XSdPs_CardReset()</a>, <a class="el" href="group__sdps__api.html#ga1f8661e4ae53a7c29b3fd44cc56a3673">XSdPs_Change_ClkFreq()</a>, <a class="el" href="group__sdps__api.html#ga9c1007ef091d85466eb133a80b9f3213">XSdPs_CheckCardDetect()</a>, <a class="el" href="group__sdps__api.html#ga9645b197623dae8c5183bb3d31c7b0eb">XSdPs_GetCardId()</a>, <a class="el" href="group__sdps__api.html#ga24e128116e1fd880b3ed1ffe7709e75d">XSdPs_GetCsd()</a>, and <a class="el" href="group__sdps__api.html#ga17d43f52a8948d5ec4f315641336d115">XSdPs_Select_Card()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gae55b1aa663629e99a9da94619c7487c5">XSdPs_MmcCardInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="gae55b1aa663629e99a9da94619c7487c5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_MmcCardInitialize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function initializes MMC. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure - could be because a) MMC is already initialized b) There is no card inserted c) One of the steps (commands) in the initialization cycle failed </li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>This function initializes the SD card by following its initialization and identification state diagram. CMD0 is sent to reset card. CMD1 sent to identify voltage and high capacity support CMD2 and CMD3 are sent to obtain Card ID and Relative card address respectively. CMD9 is sent to read the card specific data. </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9f2cc68e1e0155d5a70c6d7323fe39c9">XSdPs::BlkSize</a>, <a class="el" href="struct_x_sd_ps.html#a0b6e466f05d6ac3fb4916a640b0c02c5">XSdPs::Card_Version</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="group__sdps__api.html#gabe76c4b7e5469e21fee99adcc183d663">CSD_SPEC_VER_3</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="group__sdps__api.html#ga893a5ec77671176e84b4885113db80f5">XSDPS_BLK_SIZE_512_MASK</a>, <a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit()</a>, <a class="el" href="group__sdps__api.html#ga8683eac6348837f171e31b10d27c8f13">XSdPs_MmcCardEnum()</a>, <a class="el" href="group__sdps__api.html#gaf6a7c6b7c9f7a52aac051af0aa6ef729">XSdPs_MmcModeInit()</a>, and <a class="el" href="group__sdps__api.html#ga1af3178b4b24c991b431eb7a0aa3b23b">XSdPs_SetBlkSize()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga3c3ab46b98e997b8439af4b149445811">XSdPs_CardInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="gaf6a7c6b7c9f7a52aac051af0aa6ef729"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_MmcModeInit </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes MMC mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization is successful</li>
<li>XST_FAILURE if failure </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a069e352a2e02b9a9c0f61787549817db">XSdPs::BusWidth</a>, <a class="el" href="group__sdps__api.html#ga52d080f8ba1068e8190d52806e5a57c0">EXT_CSD_DEVICE_TYPE_BYTE</a>, <a class="el" href="group__sdps__api.html#ga8ca877dc2ad27fc4802f6405af288256">EXT_CSD_DEVICE_TYPE_HIGH_SPEED</a>, <a class="el" href="group__sdps__api.html#ga99fcdcae8a8f2a00fe2fd919b6ce1dc2">EXT_CSD_SEC_COUNT_BYTE1</a>, <a class="el" href="group__sdps__api.html#ga9bfc7e9f44c30d5b468eec19d2f92a1f">EXT_CSD_SEC_COUNT_BYTE2</a>, <a class="el" href="group__sdps__api.html#ga87cf522720c21983a95b60ecf92c5f60">EXT_CSD_SEC_COUNT_BYTE3</a>, <a class="el" href="group__sdps__api.html#gaed489daacfd9447abba7e2098e0d9ae4">EXT_CSD_SEC_COUNT_BYTE4</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="struct_x_sd_ps.html#afb72007125fc5046392961ad99999ad9">XSdPs::SectorCount</a>, <a class="el" href="group__sdps__api.html#ga6bc000fb4ce51502058f2e351c90fc19">XSdPs_Change_BusSpeed()</a>, <a class="el" href="group__sdps__api.html#gaf11db1719933123762fecb790a2977da">XSdPs_Change_BusWidth()</a>, and <a class="el" href="group__sdps__api.html#ga69e8d7cd927da4273a12d0d5fb3f36ff">XSdPs_Get_Mmc_ExtCsd()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gae55b1aa663629e99a9da94619c7487c5">XSdPs_MmcCardInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="ga0be8518af877aa1fe5f7c6b86ac4f7f8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Pullup </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sends pullup command to card before using DAT line 3(using 4-bit bus). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if successful.</li>
<li>XST_FAILURE if fail. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="struct_x_sd_ps.html#a6c40b5686bd92c1a00b208cce84583c7">XSdPs::RelCardAddr</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

</div>
</div>
<a class="anchor" id="ga15e41cb3481e66918efd4ad7db154b62"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Read </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Arg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>Buff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs SD read in polled mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Arg</td><td>Address passed by the user that is to be sent as argument along with the command. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>- Block count passed by the user. </td></tr>
    <tr><td class="paramname">Buff</td><td>- Pointer to the data buffer for a DMA transfer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure - could be because another transfer is in progress or command or data inhibit is set </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9f2cc68e1e0155d5a70c6d7323fe39c9">XSdPs::BlkSize</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, and <a class="el" href="group__sdps__api.html#ga4fde94c65a7c6e64e2444cb33e7d0431">XSdPs_SetupReadDma()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga8dfe3686ed74d09a2a46a7b5cddcde47">XSdPs_ReadPolled()</a>, and <a class="el" href="group__sdps__api.html#ga4910d9a9023501be9878c9bf02d3970f">XSdPs_StartReadTransfer()</a>.</p>

</div>
</div>
<a class="anchor" id="ga8dfe3686ed74d09a2a46a7b5cddcde47"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_ReadPolled </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Arg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>Buff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs SD read in polled mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Arg</td><td>Address passed by the user that is to be sent as argument along with the command. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>Block count passed by the user. </td></tr>
    <tr><td class="paramname">Buff</td><td>Pointer to the data buffer for a DMA transfer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure - could be because another transfer is in progress or command or data inhibit is set </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9f2cc68e1e0155d5a70c6d7323fe39c9">XSdPs::BlkSize</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#aae169220856ab624877027540c585b93">XSdPs::IsBusy</a>, <a class="el" href="struct_x_sd_ps___config.html#a1f220a7f0690a1d0c7fd0a95b5cec14c">XSdPs_Config::IsCacheCoherent</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="group__sdps__api.html#gaaa85509249cb90b33c8a201a751bdd8f">XSdps_CheckTransferDone()</a>, <a class="el" href="group__sdps__api.html#ga15e41cb3481e66918efd4ad7db154b62">XSdPs_Read()</a>, and <a class="el" href="group__sdps__api.html#ga78d4cd8fc91d6c32b6ed35bd86581cb3">XSdPs_SetupTransfer()</a>.</p>

</div>
</div>
<a class="anchor" id="gab802e347cc12cdd73d4d9dd7737535e6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Reset </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8&#160;</td>
          <td class="paramname"><em>Value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Resets the SD card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Value</td><td>Type of reset</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="group__sdps__api.html#gae561ac5fb9655a8c8523a7afd848f8cd">XSdPs_CheckResetDone()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga121220c9912174a846e46a4c1ef388d3">XSdPs_CardIfCond()</a>, <a class="el" href="group__sdps__api.html#ga87790bbe65eea7bf873f401121f4a6f7">XSdPs_IdentifyCard()</a>, <a class="el" href="group__sdps__api.html#ga88cdddd905825791ef9b682eb5adfff8">XSdPs_Idle()</a>, and <a class="el" href="group__sdps__api.html#ga43c82653cd80c9c1eb82db2eec0d7718">XSdPs_ResetConfig()</a>.</p>

</div>
</div>
<a class="anchor" id="ga43c82653cd80c9c1eb82db2eec0d7718"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_ResetConfig </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Configures the initial Reset. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#ad8613960aa0353d5a3515d9bc8d8540a">XSdPs::Host_Caps</a>, <a class="el" href="group__sdps__api.html#gaa42580dd8c7438e838e274579d9c4be3">XSdPs_DisableBusPower()</a>, <a class="el" href="group__sdps__api.html#gaca5e99fecb052c0552ab2d7a692a21ad">XSdPs_EnableBusPower()</a>, and <a class="el" href="group__sdps__api.html#gab802e347cc12cdd73d4d9dd7737535e6">XSdPs_Reset()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gaf99da6fcfbc311afcd2d6e8a94c5fe55">XSdPs_CfgInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="gad748650bd8ac568583551f6ef14b498a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Sanitize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs Sanitize operation on the unmapped user address range. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if Sanitize is successful</li>
<li>XST_FAILURE if failure - could be because another transfer is in progress or card not present or Sanitize operation failure. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#aae169220856ab624877027540c585b93">XSdPs::IsBusy</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, and <a class="el" href="group__sdps__api.html#gaee773eef8e260b4498dc607061eb18f6">XSdPs_Set_Mmc_ExtCsd()</a>.</p>

</div>
</div>
<a class="anchor" id="gabb269de0a2001e73f252206fa07ce1e7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SdCardEnum </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Enumerates the SD card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#aa22055804ffd9cbe6885b2abe40fee86">XSdPs::BusSpeed</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, <a class="el" href="group__sdps__api.html#ga5348592d5802b364df8d3e96c0a3c454">SD_CLK_19_MHZ</a>, <a class="el" href="group__sdps__api.html#gaaa8483d5e22a34ded603eb88e1805aa0">SD_CLK_25_MHZ</a>, <a class="el" href="group__sdps__api.html#ga121220c9912174a846e46a4c1ef388d3">XSdPs_CardIfCond()</a>, <a class="el" href="group__sdps__api.html#ga6c8f3a195672b1225b967c936c2e26ca">XSdPs_CardOpCond()</a>, <a class="el" href="group__sdps__api.html#ga85c3c8f706e9f35f21eb11c69e622870">XSdPs_CardReset()</a>, <a class="el" href="group__sdps__api.html#ga1f8661e4ae53a7c29b3fd44cc56a3673">XSdPs_Change_ClkFreq()</a>, <a class="el" href="group__sdps__api.html#ga9c1007ef091d85466eb133a80b9f3213">XSdPs_CheckCardDetect()</a>, <a class="el" href="group__sdps__api.html#ga9645b197623dae8c5183bb3d31c7b0eb">XSdPs_GetCardId()</a>, <a class="el" href="group__sdps__api.html#ga24e128116e1fd880b3ed1ffe7709e75d">XSdPs_GetCsd()</a>, and <a class="el" href="group__sdps__api.html#ga17d43f52a8948d5ec4f315641336d115">XSdPs_Select_Card()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga8e9a576dfdb4440a795eb6e712994050">XSdPs_SdCardInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="ga8e9a576dfdb4440a795eb6e712994050"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SdCardInitialize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function Initializes SD. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure - could be because a) SD is already initialized b) There is no card inserted c) One of the steps (commands) in the initialization cycle failed</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>This function initializes the SD card by following its initialization and identification state diagram. CMD0 is sent to reset card. CMD8 and ACDM41 are sent to identify voltage and high capacity support CMD2 and CMD3 are sent to obtain Card ID and Relative card address respectively. CMD9 is sent to read the card specific data. </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#aea317a5fc926ce97c26cd7deeecb0c0f">XSdPs_Config::BusWidth</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum()</a>, and <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga3c3ab46b98e997b8439af4b149445811">XSdPs_CardInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="gab81250892c84553ab4738f038ed35edf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SdModeInit </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes SD mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization is successful</li>
<li>XST_FAILURE if failure </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#aea317a5fc926ce97c26cd7deeecb0c0f">XSdPs_Config::BusWidth</a>, <a class="el" href="struct_x_sd_ps.html#a069e352a2e02b9a9c0f61787549817db">XSdPs::BusWidth</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="group__sdps__api.html#ga77a17479fd0519869661c9e71b82a82c">HIGH_SPEED_SUPPORT</a>, <a class="el" href="struct_x_sd_ps.html#ace5e3ce5b40302079652d5244fc26461">XSdPs::ITapDelay</a>, <a class="el" href="struct_x_sd_ps___config.html#a6fb9aee8d2b99bd35fc1f328425ea86f">XSdPs_Config::ITapDly_SDR_Clk50</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="struct_x_sd_ps.html#a5c05548361b08986315685d826851c3c">XSdPs::OTapDelay</a>, <a class="el" href="struct_x_sd_ps___config.html#ab88ed07cfc347e97ac5391b602081b4c">XSdPs_Config::OTapDly_SDR_Clk50</a>, <a class="el" href="group__sdps__api.html#ga40c201c512bf82c9cc12883af000fb2b">SCR_SPEC_VER_3</a>, <a class="el" href="struct_x_sd_ps___config.html#a97543575628c859c83c69a772df955ee">XSdPs_Config::SlotType</a>, <a class="el" href="struct_x_sd_ps.html#ad43dbd76cb2740f110f3088a8b592006">XSdPs::Switch1v8</a>, <a class="el" href="group__sdps__api.html#ga9510331005527a72f48fbe8d2ed16765">UHS_SDR50_SUPPORT</a>, <a class="el" href="group__sdps__api.html#ga406577df2b89f9b74838df7567268413">WIDTH_4_BIT_SUPPORT</a>, <a class="el" href="group__sdps__api.html#ga893a5ec77671176e84b4885113db80f5">XSDPS_BLK_SIZE_512_MASK</a>, <a class="el" href="group__sdps__api.html#ga6b65625dd94d082f21d8dedfdfd8db97">XSdPs_CardSetVoltage18()</a>, <a class="el" href="group__sdps__api.html#ga6bc000fb4ce51502058f2e351c90fc19">XSdPs_Change_BusSpeed()</a>, <a class="el" href="group__sdps__api.html#gaf11db1719933123762fecb790a2977da">XSdPs_Change_BusWidth()</a>, <a class="el" href="group__sdps__api.html#gafc7e71cb62142d0ef939336195102666">XSdPs_Get_BusSpeed()</a>, <a class="el" href="group__sdps__api.html#ga864452e1802367600d196ccc37310f7c">XSdPs_Get_BusWidth()</a>, <a class="el" href="group__sdps__api.html#gafe05874a0c1191faf537b69af39cdef5">XSdPs_Identify_UhsMode()</a>, and <a class="el" href="group__sdps__api.html#ga1af3178b4b24c991b431eb7a0aa3b23b">XSdPs_SetBlkSize()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga8e9a576dfdb4440a795eb6e712994050">XSdPs_SdCardInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="ga17d43f52a8948d5ec4f315641336d115"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Select_Card </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Selects card and sets default block size. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if successful.</li>
<li>XST_FAILURE if fail.</li>
<li>XSDPS_CT_ERROR if Command Transfer fail. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="struct_x_sd_ps.html#a6c40b5686bd92c1a00b208cce84583c7">XSdPs::RelCardAddr</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga8683eac6348837f171e31b10d27c8f13">XSdPs_MmcCardEnum()</a>, and <a class="el" href="group__sdps__api.html#gabb269de0a2001e73f252206fa07ce1e7">XSdPs_SdCardEnum()</a>.</p>

</div>
</div>
<a class="anchor" id="ga0446c3fbdc875f25c1bbf74efa3ff970"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SendCmd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Cmd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initiates the Cmd transfer to SD card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Cmd</td><td>Command to be sent</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a4a098e7835929d87e01f9cf7a9091598">XSdPs::TransferMode</a>, and <a class="el" href="group__sdps__api.html#ga959b013962a6b53aa1c52f8ed78153be">XSdPs_FrameCmd()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

</div>
</div>
<a class="anchor" id="ga5ab803ced3accc20c54eee342e6e5b52"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SendErase </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sends Erase command to the device and wait for transfer complete. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if erase operation is successful</li>
<li>XST_FAILURE if failure - could be because erase operation failed. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="group__sdps__api.html#gaaa85509249cb90b33c8a201a751bdd8f">XSdps_CheckTransferDone()</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gae356e151de825904653850dc1f2de4e7">XSdPs_Erase()</a>.</p>

</div>
</div>
<a class="anchor" id="gaee773eef8e260b4498dc607061eb18f6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Set_Mmc_ExtCsd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Arg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes EXT_CSD register of eMMC. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">Arg</td><td>Argument to be sent along with the command.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if successful.</li>
<li>XST_FAILURE if fail. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="group__sdps__api.html#gaaa85509249cb90b33c8a201a751bdd8f">XSdps_CheckTransferDone()</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gaf11db1719933123762fecb790a2977da">XSdPs_Change_BusWidth()</a>, <a class="el" href="group__sdps__api.html#ga643a4036059e0a3094c22f46b1adccc8">XSdPs_EmmcModeInit()</a>, and <a class="el" href="group__sdps__api.html#gad748650bd8ac568583551f6ef14b498a">XSdPs_Sanitize()</a>.</p>

</div>
</div>
<a class="anchor" id="ga1af3178b4b24c991b431eb7a0aa3b23b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SetBlkSize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u16&#160;</td>
          <td class="paramname"><em>BlkSize</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Updates Block size for read/write operations. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">BlkSize</td><td>Block size passed by the user.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9f2cc68e1e0155d5a70c6d7323fe39c9">XSdPs::BlkSize</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="group__sdps__api.html#ga3c9d104a1d7f9e14d8b2b79fbb47702d">XSdPs_CheckBusIdle()</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gae55b1aa663629e99a9da94619c7487c5">XSdPs_MmcCardInitialize()</a>, <a class="el" href="group__sdps__api.html#gab81250892c84553ab4738f038ed35edf">XSdPs_SdModeInit()</a>, and <a class="el" href="group__sdps__api.html#ga78d4cd8fc91d6c32b6ed35bd86581cb3">XSdPs_SetupTransfer()</a>.</p>

</div>
</div>
<a class="anchor" id="ga45d325b142a6526ec0468d1fbc34c471"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SetClock </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>SelFreq</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the clock to the passed frequency. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">SelFreq</td><td>Selected frequency</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="group__sdps__api.html#gacd492dfefb8a2fe67964993032250bd4">XSdPs_CalcClock()</a>, and <a class="el" href="group__sdps__api.html#gad6793165c476a72b093f179766ab176f">XSdPs_EnableClock()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga1f8661e4ae53a7c29b3fd44cc56a3673">XSdPs_Change_ClkFreq()</a>.</p>

</div>
</div>
<a class="anchor" id="ga9fb2d5662fa3656cafb4a20530def821"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SetEndAddr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>EndAddr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the address of the last write block to be erased. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">EndAddr</td><td>Address of the last write block.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if Set End Address is successful.</li>
<li>XST_FAILURE if failure - could be because failed to set EndAddr. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gae356e151de825904653850dc1f2de4e7">XSdPs_Erase()</a>.</p>

</div>
</div>
<a class="anchor" id="ga2e868dda7aa547805fe79f9e840059e5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_SetExecTuning </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets bit to start execution of tuning. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, and <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga089a1b91f436e99b0663b91c3038e9ce">XSdPs_AutoTuning()</a>.</p>

</div>
</div>
<a class="anchor" id="ga73b1071173ef4b1a1958773ed5c59a5f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SetStartAddr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>StartAddr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the address of the first write block to be erased. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">StartAddr</td><td>Address of the first write block.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if Set start Address is successful</li>
<li>XST_FAILURE if failure - could be because failed to set EndAddr. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#ace9a2dd34b39f3100f97fcd50883f833">XSdPs::CardType</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gae356e151de825904653850dc1f2de4e7">XSdPs_Erase()</a>.</p>

</div>
</div>
<a class="anchor" id="ga172c91b6b33e2e94ded0c3d58797411d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_SetTapDelay </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to set Tap Delay with respect to the speed modes. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a2958388759de8ad51b37dcd814f96be3">XSdPs::Mode</a>, <a class="el" href="group__sdps__api.html#gacf453a36b7ec19fb4b5dbfda827cc6a7">XSdPs_ConfigTapDelay()</a>, and <a class="el" href="group__sdps__api.html#gaf51d4f72c727b7d28592ac797fe5d467">XSdPs_DllRstCtrl()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga1f8661e4ae53a7c29b3fd44cc56a3673">XSdPs_Change_ClkFreq()</a>.</p>

</div>
</div>
<a class="anchor" id="gae8066fed7198c31836229aeb151ab569"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_SetTapDelay_DDR50 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the tap delay for DDR50 uhs mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#ace5e3ce5b40302079652d5244fc26461">XSdPs::ITapDelay</a>, <a class="el" href="struct_x_sd_ps___config.html#a14ecdc28f2bfb7947ac241e0025b78b5">XSdPs_Config::ITapDly_DDR_Clk50</a>, <a class="el" href="struct_x_sd_ps.html#a5c05548361b08986315685d826851c3c">XSdPs::OTapDelay</a>, <a class="el" href="struct_x_sd_ps___config.html#a97d8fe542ee0224d85448f3e0cc1877c">XSdPs_Config::OTapDly_DDR_Clk50</a>, and <a class="el" href="struct_x_sd_ps___config.html#a97543575628c859c83c69a772df955ee">XSdPs_Config::SlotType</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gafe05874a0c1191faf537b69af39cdef5">XSdPs_Identify_UhsMode()</a>.</p>

</div>
</div>
<a class="anchor" id="ga220352b3948b59ad89e32bb71579b861"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_SetTapDelay_SDR104 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the tap delay for SDR104 uhs mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a7fe36b608a4251f5b93c9c74cfb85e08">XSdPs_Config::BankNumber</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a5c05548361b08986315685d826851c3c">XSdPs::OTapDelay</a>, and <a class="el" href="struct_x_sd_ps___config.html#a365ea7869549e591ca1e48a3c89d91ca">XSdPs_Config::OTapDly_SDR_Clk200</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gafe05874a0c1191faf537b69af39cdef5">XSdPs_Identify_UhsMode()</a>.</p>

</div>
</div>
<a class="anchor" id="ga0dbbe882b04aab3d81add6021a8698bf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_SetTapDelay_SDR25 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the tap delay for SDR25 uhs mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#ace5e3ce5b40302079652d5244fc26461">XSdPs::ITapDelay</a>, <a class="el" href="struct_x_sd_ps___config.html#a6fb9aee8d2b99bd35fc1f328425ea86f">XSdPs_Config::ITapDly_SDR_Clk50</a>, <a class="el" href="struct_x_sd_ps.html#a5c05548361b08986315685d826851c3c">XSdPs::OTapDelay</a>, <a class="el" href="struct_x_sd_ps___config.html#ab88ed07cfc347e97ac5391b602081b4c">XSdPs_Config::OTapDly_SDR_Clk50</a>, and <a class="el" href="struct_x_sd_ps___config.html#a97543575628c859c83c69a772df955ee">XSdPs_Config::SlotType</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gafe05874a0c1191faf537b69af39cdef5">XSdPs_Identify_UhsMode()</a>.</p>

</div>
</div>
<a class="anchor" id="gafc5e8e46a354e7a21b046435382bba12"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_SetTapDelay_SDR50 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the tap delay for SDR50 uhs mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a5c05548361b08986315685d826851c3c">XSdPs::OTapDelay</a>, and <a class="el" href="struct_x_sd_ps___config.html#a6c15fcbb080e3e2b428135eb21c02d8b">XSdPs_Config::OTapDly_SDR_Clk100</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gafe05874a0c1191faf537b69af39cdef5">XSdPs_Identify_UhsMode()</a>.</p>

</div>
</div>
<a class="anchor" id="ga8fc46805b1c3026474ca3b26142a9133"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_Setup32ADMA2DescTbl </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u8 *&#160;</td>
          <td class="paramname"><em>Buff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to setup ADMA2 descriptor table for 32-bit DMA. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>Block count. </td></tr>
    <tr><td class="paramname">Buff</td><td>Pointer to data buffer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="struct_x_sd_ps___config.html#a1f220a7f0690a1d0c7fd0a95b5cec14c">XSdPs_Config::IsCacheCoherent</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gaf9b8a29b65e1213b11ad22312e5f84be">XSdPs_SetupADMA2DescTbl()</a>.</p>

</div>
</div>
<a class="anchor" id="gaed024f423e3600d7ec230f7ca8bb1118"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_Setup64ADMA2DescTbl </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u8 *&#160;</td>
          <td class="paramname"><em>Buff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to setup ADMA2 descriptor table for 64-bit DMA. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>Block count. </td></tr>
    <tr><td class="paramname">Buff</td><td>Pointer to data buffer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="struct_x_sd_ps___config.html#a1f220a7f0690a1d0c7fd0a95b5cec14c">XSdPs_Config::IsCacheCoherent</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gaf9b8a29b65e1213b11ad22312e5f84be">XSdPs_SetupADMA2DescTbl()</a>.</p>

</div>
</div>
<a class="anchor" id="gaf9b8a29b65e1213b11ad22312e5f84be"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_SetupADMA2DescTbl </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u8 *&#160;</td>
          <td class="paramname"><em>Buff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to setup ADMA2 descriptor table. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>Block count. </td></tr>
    <tr><td class="paramname">Buff</td><td>Pointer to data buffer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, <a class="el" href="group__sdps__api.html#ga8fc46805b1c3026474ca3b26142a9133">XSdPs_Setup32ADMA2DescTbl()</a>, and <a class="el" href="group__sdps__api.html#gaed024f423e3600d7ec230f7ca8bb1118">XSdPs_Setup64ADMA2DescTbl()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga4fde94c65a7c6e64e2444cb33e7d0431">XSdPs_SetupReadDma()</a>, and <a class="el" href="group__sdps__api.html#ga7deb56821f069d713aa76a10b83c4baa">XSdPs_SetupWriteDma()</a>.</p>

</div>
</div>
<a class="anchor" id="gad03504fb7e11f640d478e5db67f2beb3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_SetupADMA2DescTbl64Bit </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to setup ADMA2 descriptor table for 64 Bit DMA. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>Block count.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#af0e45cda323df91369aa88c61d8e00e2">XSdPs::Dma64BitAddr</a>, and <a class="el" href="struct_x_sd_ps___config.html#a1f220a7f0690a1d0c7fd0a95b5cec14c">XSdPs_Config::IsCacheCoherent</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga4fde94c65a7c6e64e2444cb33e7d0431">XSdPs_SetupReadDma()</a>, and <a class="el" href="group__sdps__api.html#ga7deb56821f069d713aa76a10b83c4baa">XSdPs_SetupWriteDma()</a>.</p>

</div>
</div>
<a class="anchor" id="ga38aad34c4dd588d187c6053a9514c52e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SetupCmd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Arg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes the command sequence. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Arg</td><td>Address passed by the user that is to be sent as argument along with the command. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>- Block count passed by the user.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="group__sdps__api.html#ga3c9d104a1d7f9e14d8b2b79fbb47702d">XSdPs_CheckBusIdle()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

</div>
</div>
<a class="anchor" id="ga4fde94c65a7c6e64e2444cb33e7d0431"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_SetupReadDma </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u16&#160;</td>
          <td class="paramname"><em>BlkCnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u16&#160;</td>
          <td class="paramname"><em>BlkSize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>Buff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function is used to do the DMA transfer to or from SD card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>Block count passed by the user. </td></tr>
    <tr><td class="paramname">BlkSize</td><td>Block size passed by the user. </td></tr>
    <tr><td class="paramname">Buff</td><td>Pointer to the data buffer for a DMA transfer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure - could be because another transfer is in progress or command or data inhibit is set </li>
</ul>
</dd></dl>

<p>References <a class="el" href="group__sdps__api.html#gaad1398373adf6de2322bf721948b891e">ADDRESS_BEYOND_32BIT</a>, <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#af0e45cda323df91369aa88c61d8e00e2">XSdPs::Dma64BitAddr</a>, <a class="el" href="struct_x_sd_ps___config.html#a1f220a7f0690a1d0c7fd0a95b5cec14c">XSdPs_Config::IsCacheCoherent</a>, <a class="el" href="struct_x_sd_ps.html#a4a098e7835929d87e01f9cf7a9091598">XSdPs::TransferMode</a>, <a class="el" href="group__sdps__api.html#gaf9b8a29b65e1213b11ad22312e5f84be">XSdPs_SetupADMA2DescTbl()</a>, and <a class="el" href="group__sdps__api.html#gad03504fb7e11f640d478e5db67f2beb3">XSdPs_SetupADMA2DescTbl64Bit()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga273b141e9bacac12fd3b3123b7827faa">XSdPs_Change_SdBusSpeed()</a>, <a class="el" href="group__sdps__api.html#gafc7e71cb62142d0ef939336195102666">XSdPs_Get_BusSpeed()</a>, <a class="el" href="group__sdps__api.html#ga864452e1802367600d196ccc37310f7c">XSdPs_Get_BusWidth()</a>, <a class="el" href="group__sdps__api.html#ga69e8d7cd927da4273a12d0d5fb3f36ff">XSdPs_Get_Mmc_ExtCsd()</a>, <a class="el" href="group__sdps__api.html#gaa26e9b4a046701024b01b1b0cb48ed08">XSdPs_Get_Status()</a>, and <a class="el" href="group__sdps__api.html#ga15e41cb3481e66918efd4ad7db154b62">XSdPs_Read()</a>.</p>

</div>
</div>
<a class="anchor" id="ga78d4cd8fc91d6c32b6ed35bd86581cb3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SetupTransfer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initiates the transfer to or from SD card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps___config.html#a494f4186575a737efe3f8b3b9848c3c7">XSdPs_Config::CardDetect</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#a11d4222e3ecae1a01aa4c3e34a00ef35">XSdPs::HC_Version</a>, <a class="el" href="struct_x_sd_ps.html#ad8613960aa0353d5a3515d9bc8d8540a">XSdPs::Host_Caps</a>, <a class="el" href="group__sdps__api.html#ga893a5ec77671176e84b4885113db80f5">XSDPS_BLK_SIZE_512_MASK</a>, and <a class="el" href="group__sdps__api.html#ga1af3178b4b24c991b431eb7a0aa3b23b">XSdPs_SetBlkSize()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga8dfe3686ed74d09a2a46a7b5cddcde47">XSdPs_ReadPolled()</a>, <a class="el" href="group__sdps__api.html#ga4910d9a9023501be9878c9bf02d3970f">XSdPs_StartReadTransfer()</a>, <a class="el" href="group__sdps__api.html#ga6f7763ba81207cc125a3da437b140b58">XSdPs_StartWriteTransfer()</a>, and <a class="el" href="group__sdps__api.html#ga69aa57979c1ef9b9ec3fbdc6d8ab7277">XSdPs_WritePolled()</a>.</p>

</div>
</div>
<a class="anchor" id="ga1dcb11223d1894628593253fd7144c42"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SetupVoltageSwitch </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets up the voltage switch. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gac487bcb38cd80e158c7b833b4b3be34d">XSdPs_Switch_Voltage()</a>.</p>

</div>
</div>
<a class="anchor" id="ga7deb56821f069d713aa76a10b83c4baa"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void XSdPs_SetupWriteDma </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u16&#160;</td>
          <td class="paramname"><em>BlkCnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u16&#160;</td>
          <td class="paramname"><em>BlkSize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u8 *&#160;</td>
          <td class="paramname"><em>Buff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function is used to do the DMA transfer to or from SD card. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>Block count passed by the user. </td></tr>
    <tr><td class="paramname">BlkSize</td><td>Block size passed by the user. </td></tr>
    <tr><td class="paramname">Buff</td><td>Pointer to the data buffer for a DMA transfer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure - could be because another transfer is in progress or command or data inhibit is set </li>
</ul>
</dd></dl>

<p>References <a class="el" href="group__sdps__api.html#gaad1398373adf6de2322bf721948b891e">ADDRESS_BEYOND_32BIT</a>, <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#af0e45cda323df91369aa88c61d8e00e2">XSdPs::Dma64BitAddr</a>, <a class="el" href="struct_x_sd_ps___config.html#a1f220a7f0690a1d0c7fd0a95b5cec14c">XSdPs_Config::IsCacheCoherent</a>, <a class="el" href="struct_x_sd_ps.html#a4a098e7835929d87e01f9cf7a9091598">XSdPs::TransferMode</a>, <a class="el" href="group__sdps__api.html#gaf9b8a29b65e1213b11ad22312e5f84be">XSdPs_SetupADMA2DescTbl()</a>, and <a class="el" href="group__sdps__api.html#gad03504fb7e11f640d478e5db67f2beb3">XSdPs_SetupADMA2DescTbl64Bit()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#gac51519692c6bb54d91aaecb8bcf957d1">XSdPs_Write()</a>.</p>

</div>
</div>
<a class="anchor" id="gab75b25b7d98ac1e72aa60cda683ffcda"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_SetVoltage18 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets voltage to 1.8 V. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if successful</li>
<li>XST_FAILURE if failure </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps___config.html#a18fc4a81c465a70686b9a3c038e3dbc0">XSdPs_Config::BaseAddress</a>, <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, and <a class="el" href="group__sdps__api.html#gafa42ece30f32bbc385f0533873461b2d">XSdPs_CheckVoltage18()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga6b65625dd94d082f21d8dedfdfd8db97">XSdPs_CardSetVoltage18()</a>.</p>

</div>
</div>
<a class="anchor" id="ga4910d9a9023501be9878c9bf02d3970f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_StartReadTransfer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Arg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>Buff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs SD read in polled mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Arg</td><td>Address passed by the user that is to be sent as argument along with the command. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>Block count passed by the user. </td></tr>
    <tr><td class="paramname">Buff</td><td>Pointer to the data buffer for a DMA transfer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if Transfer initialization was successful</li>
<li>XST_FAILURE if failure - could be because another transfer is in progress or command or data inhibit is set </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#aae169220856ab624877027540c585b93">XSdPs::IsBusy</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="group__sdps__api.html#ga15e41cb3481e66918efd4ad7db154b62">XSdPs_Read()</a>, and <a class="el" href="group__sdps__api.html#ga78d4cd8fc91d6c32b6ed35bd86581cb3">XSdPs_SetupTransfer()</a>.</p>

</div>
</div>
<a class="anchor" id="ga6f7763ba81207cc125a3da437b140b58"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_StartWriteTransfer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Arg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>Buff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Starts SD write transfer. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Arg</td><td>Address passed by the user that is to be sent as argument along with the command. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>Block count passed by the user. </td></tr>
    <tr><td class="paramname">Buff</td><td>Pointer to the data buffer for a DMA transfer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if Transfer initialization was successful</li>
<li>XST_FAILURE if failure - could be because another transfer is in progress or command or data inhibit is set </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#aae169220856ab624877027540c585b93">XSdPs::IsBusy</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="group__sdps__api.html#ga78d4cd8fc91d6c32b6ed35bd86581cb3">XSdPs_SetupTransfer()</a>, and <a class="el" href="group__sdps__api.html#gac51519692c6bb54d91aaecb8bcf957d1">XSdPs_Write()</a>.</p>

</div>
</div>
<a class="anchor" id="gac487bcb38cd80e158c7b833b4b3be34d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Switch_Voltage </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Switches the SD card voltage from 3v3 to 1v8. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> instance. </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="el" href="group__sdps__api.html#ga6b65625dd94d082f21d8dedfdfd8db97">XSdPs_CardSetVoltage18()</a>, <a class="el" href="group__sdps__api.html#gaf0101a5bb2238bcf0279c3e4c0a33ccb">XSdPs_CheckBusHigh()</a>, and <a class="el" href="group__sdps__api.html#ga1dcb11223d1894628593253fd7144c42">XSdPs_SetupVoltageSwitch()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga6c8f3a195672b1225b967c936c2e26ca">XSdPs_CardOpCond()</a>.</p>

</div>
</div>
<a class="anchor" id="gac51519692c6bb54d91aaecb8bcf957d1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_Write </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Arg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u8 *&#160;</td>
          <td class="paramname"><em>Buff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs SD write in polled mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Arg</td><td>Address passed by the user that is to be sent as argument along with the command. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>- Block count passed by the user. </td></tr>
    <tr><td class="paramname">Buff</td><td>- Pointer to the data buffer for a DMA transfer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure - could be because another transfer is in progress or command or data inhibit is set </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9f2cc68e1e0155d5a70c6d7323fe39c9">XSdPs::BlkSize</a>, <a class="el" href="group__sdps__api.html#ga1c5c45efb0402b9d8e6a33d036dbd220">XSdPs_CmdTransfer()</a>, and <a class="el" href="group__sdps__api.html#ga7deb56821f069d713aa76a10b83c4baa">XSdPs_SetupWriteDma()</a>.</p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga6f7763ba81207cc125a3da437b140b58">XSdPs_StartWriteTransfer()</a>, and <a class="el" href="group__sdps__api.html#ga69aa57979c1ef9b9ec3fbdc6d8ab7277">XSdPs_WritePolled()</a>.</p>

</div>
</div>
<a class="anchor" id="ga69aa57979c1ef9b9ec3fbdc6d8ab7277"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">s32 XSdPs_WritePolled </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_sd_ps.html">XSdPs</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Arg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BlkCnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u8 *&#160;</td>
          <td class="paramname"><em>Buff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs SD write in polled mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the instance to be worked on. </td></tr>
    <tr><td class="paramname">Arg</td><td>Address passed by the user that is to be sent as argument along with the command. </td></tr>
    <tr><td class="paramname">BlkCnt</td><td>Block count passed by the user. </td></tr>
    <tr><td class="paramname">Buff</td><td>Pointer to the data buffer for a DMA transfer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if initialization was successful</li>
<li>XST_FAILURE if failure - could be because another transfer is in progress or command or data inhibit is set </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_sd_ps.html#a9ab6ed4e7a1155a0708152ca2f27d650">XSdPs::Config</a>, <a class="el" href="struct_x_sd_ps.html#aae169220856ab624877027540c585b93">XSdPs::IsBusy</a>, <a class="el" href="struct_x_sd_ps.html#ab0fec7949e73bc680a138fbf644bd692">XSdPs::IsReady</a>, <a class="el" href="group__sdps__api.html#gaaa85509249cb90b33c8a201a751bdd8f">XSdps_CheckTransferDone()</a>, <a class="el" href="group__sdps__api.html#ga78d4cd8fc91d6c32b6ed35bd86581cb3">XSdPs_SetupTransfer()</a>, and <a class="el" href="group__sdps__api.html#gac51519692c6bb54d91aaecb8bcf957d1">XSdPs_Write()</a>.</p>

</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a class="anchor" id="ga29c3d4542867ad2d0c8fcf48f46b8845"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_x_sd_ps___config.html">XSdPs_Config</a> XSdPs_ConfigTable[]</td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">=</div>
<div class="line">{</div>
<div class="line">        {</div>
<div class="line">                XPAR_XSDPS_0_DEVICE_ID,</div>
<div class="line">                XPAR_XSDPS_0_BASEADDR,</div>
<div class="line">                XPAR_XSDPS_0_SDIO_CLK_FREQ_HZ,</div>
<div class="line">                XPAR_XSDPS_0_HAS_CD,</div>
<div class="line">                XPAR_XSDPS_0_HAS_WP,</div>
<div class="line">                XPAR_XSDPS_0_BUS_WIDTH,</div>
<div class="line">                XPAR_XSDPS_0_MIO_BANK,</div>
<div class="line">                XPAR_XSDPS_0_HAS_EMIO,</div>
<div class="line">                XPAR_XSDPS_0_SLOT_TYPE,</div>
<div class="line">                XPAR_XSDPS_0_IS_CACHE_COHERENT,</div>
<div class="line">                XPAR_XSDPS_0_CLK_50_SDR_ITAP_DLY,</div>
<div class="line">                XPAR_XSDPS_0_CLK_50_SDR_OTAP_DLY,</div>
<div class="line">                XPAR_XSDPS_0_CLK_50_DDR_ITAP_DLY,</div>
<div class="line">                XPAR_XSDPS_0_CLK_50_DDR_OTAP_DLY,</div>
<div class="line">                XPAR_XSDPS_0_CLK_100_SDR_OTAP_DLY,</div>
<div class="line">                XPAR_XSDPS_0_CLK_200_SDR_OTAP_DLY,</div>
<div class="line">                XPAR_XSDPS_0_CLK_200_DDR_OTAP_DLY</div>
<div class="line">        }</div>
<div class="line">}</div>
</div><!-- fragment -->
<p>The configuration table for devices. </p>
<p><a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> Configuration Table. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga27d6bd37204cdb0c26430efedd8e97eb">XSdPs_LookupConfig()</a>.</p>

</div>
</div>
<a class="anchor" id="ga40d2b56e1265bf5730e99da60e25dc2a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_x_sd_ps___config.html">XSdPs_Config</a> XSdPs_ConfigTable[XPAR_XSDPS_NUM_INSTANCES]</td>
        </tr>
      </table>
</div><div class="memdoc">

<p><a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> Configuration Table. </p>
<p><a class="el" href="struct_x_sd_ps.html" title="The XSdPs driver instance data. ">XSdPs</a> Configuration Table. </p>

<p>Referenced by <a class="el" href="group__sdps__api.html#ga27d6bd37204cdb0c26430efedd8e97eb">XSdPs_LookupConfig()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
	<p class="footer">&copy; Copyright 2015-2022 Xilinx, Inc. All Rights Reserved.</p>
	<p class="footer">&copy; Copyright 2022-2023 Advanced Micro Devices, Inc. All Rights Reserved.</p>
</div>
</body>
</html>
